معرفی چهارچوب ADF

دوشنبه, 08/29/2011 - 08:16 -- admin

مقدمه چهارچوب java EE استاندارد ، مستحکم، قابل گسترش و امن می باشد که پایه های بسیاری از برنامه های بزرگ را تشکیل می دهد در حقیقیت این چهار چوب برای ایجاد برنامه ی چند لایهبا استفاده از زبان جاوا یکسری قوانین تبعیه کرده است.

در گذشته بین مستحکم بودن برنامه با پیچیده شدن آن یک مصداق یک به یک وجود داشت به منظور بدست آوردن آن استحکام بهر حال با استفاده از مزیت های چهار چوب oracle ADFشما قادر هستید که برنامه های پیشرفته با چهار چوب java EEو همچنان بر پایه ی الگو های استانداردولی با تلاش کمترپیاده سازی نمایید. علاوه بر این ، با توجه به افزایش نیاز به ساخت برنامه های ترکیبی که از معماری بر پایهسرویس استفاده می کند،

برنامه نویسان مجبور گردیده اند تا برنامه هایی ایجاد نمایند که از لحاظ سرعت ساخت بسیار بالا باشد. به منظور بالا بردن سرعت پیاده سازیبرنامه نویسان مجبور به نوشتن کد های بسیار زیادی در لایه های زیر ساخت می باشند که خود امری بسیار پیچیده و هزینه بر میباشد.

علاوه بر فراهم نمودن استحکام ،کارایی بالا و قابل پشتیبانی بودن برنامه ها، چارچوبOracle ADFکد های زیر ساخت که در نوع خود بی نظیر میباشد را فراهم می آوردکه کمک به ساخت برنامه هابا سرعت بالابرای برنامه های بر پایه ی معماری سرویس گرا می نماید.

وجود این لایه زیر ساخت کامل سبب می شود که یک سازمان به جای تمرکز بر روی ایجادلایه های برنامه نویسی پیچیدهبر روی ساخت برنامه تمرکز نماید و بجای وقت و هزینه صرف کردن برای برنامه های سخت و صرف برنامه نویسی ، بر روی برنامه ای که مربوط به شرکت خودشان میباشد وقت صرفنماید. Oracle ADFساخت برنامه های بر پایه ی java EEرا ساده تر مینماید Oracle ADF یک چهارچوب کاملا خلاقانه و در عین حال یک چهار چوب java EE

کاملا بالغ است و توسط شرکت اراکل پشتیبانی می گردد

و مستقیماتوسطمحیط برنامه نویسی Oracle JDeveloperپشتیبانی می گردد که این محیط توسعه نرم افزار تا کنون چندین بار برنده ی جایزه گردیده است. Oracle ADFبا فراهم آوردن کد های زیر ساخت برنامه نویسی جاوا را ساده میکند و این امر سبب می شود تا بیشتر وقت برنامه نویس صرف منطق های برنامه های خود گردد

تا صرف نوشتن کدها ی جاوای زیر ساخت و

مقدمه چهارچوب java EE استاندارد ، مستحکم، قابل گسترش و امن می باشد که پایه های بسیاری از برنامه های بزرگ را تشکیل می دهد در حقیقیت این چهار چوب برای ایجاد برنامه ی چند لایهبا استفاده از زبان جاوا یکسری قوانین تبعیه کرده است.

در گذشته بین مستحکم بودن برنامه با پیچیده شدن آن یک مصداق یک به یک وجود داشت به منظور بدست آوردن آن استحکام بهر حال با استفاده از مزیت های چهار چوب oracle ADFشما قادر هستید که برنامه های پیشرفته با چهار چوب java EEو همچنان بر پایه ی الگو های استانداردولی با تلاش کمترپیاده سازی نمایید. علاوه بر این ، با توجه به افزایش نیاز به ساخت برنامه های ترکیبی که از معماری بر پایهسرویس استفاده می کند،

برنامه نویسان مجبور گردیده اند تا برنامه هایی ایجاد نمایند که از لحاظ سرعت ساخت بسیار بالا باشد. به منظور بالا بردن سرعت پیاده سازیبرنامه نویسان مجبور به نوشتن کد های بسیار زیادی در لایه های زیر ساخت می باشند که خود امری بسیار پیچیده و هزینه بر میباشد.

علاوه بر فراهم نمودن استحکام ،کارایی بالا و قابل پشتیبانی بودن برنامه ها، چارچوبOracle ADFکد های زیر ساخت که در نوع خود بی نظیر میباشد را فراهم می آوردکه کمک به ساخت برنامه هابا سرعت بالابرای برنامه های بر پایه ی معماری سرویس گرا می نماید.

وجود این لایه زیر ساخت کامل سبب می شود که یک سازمان به جای تمرکز بر روی ایجادلایه های برنامه نویسی پیچیدهبر روی ساخت برنامه تمرکز نماید و بجای وقت و هزینه صرف کردن برای برنامه های سخت و صرف برنامه نویسی ، بر روی برنامه ای که مربوط به شرکت خودشان میباشد وقت صرفنماید. Oracle ADFساخت برنامه های بر پایه ی java EEرا ساده تر مینماید Oracle ADF یک چهارچوب کاملا خلاقانه و در عین حال یک چهار چوب java EE

کاملا بالغ است و توسط شرکت اراکل پشتیبانی می گردد

و مستقیماتوسطمحیط برنامه نویسی Oracle JDeveloperپشتیبانی می گردد که این محیط توسعه نرم افزار تا کنون چندین بار برنده ی جایزه گردیده است. Oracle ADFبا فراهم آوردن کد های زیر ساخت برنامه نویسی جاوا را ساده میکند و این امر سبب می شود تا بیشتر وقت برنامه نویس صرف منطق های برنامه های خود گردد

تا صرف نوشتن کدها ی جاوای زیر ساخت و همچنین ADFبه منظور سهولت بیشتر برنامه نویسان از روشی که به صورت (تعریفی و اتوماتیک) می باشد بهره میبرد

و این دو موضوع توسط JDeveloper11gکاملا پشتیبانی میگردد. بعنوان مثال ،Oracle ADFاین موضوع را که بتوانید یک برنامه ی سریع بسازید که داده های برنامه ی شما را به صورت سرویس در اختیار یک محیط مبتنیبه سرویس قرار دهد، بسیار ساده مینماید این موضوع با قرار گرفتن یک لایه سرویس بر روی لایه منطق این چهار چوب صورت میپذیرد .

این جدا سازی لایه های منطق برنامه در ADFتوسط داده های متا نگهداری میگردد با استفاده از این معماری بر پایه ی متابرنامه نویس قادر خواهد بود تا بر روی منطق برنامه و آنچه کاربر میخواهد تمرکز نمایدتا اینکه بر روی چگونگی دسترسی سرویس ها وقت بگذارد.

برای ساخت رابط کاربری و ظاهر برنامه فقط کافیست که لایه منطق ADFو داده هایی را که فراهم نموده اید بر روی صفحات کاربری JSFبیندازید و نوع نمایش آن داده را فرم یا جدول یاسایر انواع نمایش انتخاب نمایید. در مثال آورده شده در زیرشما قادرید تا یک جدول پایگاه داده را که در ADFبصورت یک سرویس منطقی تعریف میگردد را به کمک JDeveloperبر روی صفحه بیاندازید سپس یک منوی جدید نمایان میگردد که از شما می خواهد تا نوع نمایش این داده را مشخص نمائید تمامی اجرای این ارتباط را خود ADFبر عهده میگیرد.

با استفاده از ADFپیاده سازی جزئیات این سرویسهابه صورت داده های متا در لایه مدل ذخیره میگردد. استفاده از این داده های متا باعث میشود تابتوان بدون نیاز به تغییر لایه نمایش منطق های سرویس را تغییر داد و این موضوع کمک مینماید تا توسعه ی سیستم سرعت بیشتری پیدا کند. معماری oracle ADF ADFبر مبنای معماری سه لایه توسعه یافته است لایه مدل ، لایه نمایش، لایه کنترل لایه ی مدل: که با سرویس داده (پایگاه داده) در ارتباط است و منطق برنامه را پشتیانی می کند. لایه ی نمایش: که رابط کاربری را پشتیبانی مینماید. لایه ی کنترل: که جریان برنامه را کنترل میکند و لایه نمایش را به لایه ی مدل متصل مینماید. جداسازی برنامه بهاین سه لایه سبب می شود تا نگهداری کد و استفاده ی مجدد از کامپونت ها بین برنامه ها آسان گردد.

مجزا بودن هر لایه از لایه ی دیگر موجب می شود تا یک معماری بر پایه ی سرویس مستقل وجود داشته باشد

زیرا هر لایه به لایه دیگر سرویس می دهد. معماریADFالگوی MVCرا پیاده سازی می نماید

اما لایه ی مدل را از لایه ی سرویس دهنده ی منطقی جدا می نماید تا معماری بر پایه ی سرویس را پشتیبانینماید در حقیقت معماریADFبه 4 لایه ی زیر تقسیم میگردد: 1-لایه ی منطق برنامه:این لایه امکان دسترسی به داده را از منابع گوناگون فراهم می کند و منطق برنامه را پشتیبانی می نماید 2-لایه مدل: یک لایه انتزاعی بر روی لایه ی منطق برنامه پیاده می نماید و این امکان را فراهم می نماید تا لایه های نمایش و کنترل بتوانند با پیاده سازی های گوناگون منطق برنامه ها به صورت یکسان رفتار نماید در حقیقت لایه ی نمایش و کنترل کاملا از لایه ی منطق برنامه مستقل باشد.

3-لایه ی کنترل: یک مکانیزم ایجاد می نماید تا جریان برنامه تحت وب کنترل گردد 4-لایه ی نمایش: قابلیت نمایش را برای کاربر فراهم می نماید

. ADFاین امکان را به برنامه نویسان می دهد

تا در هر لایه ی تکنولوژی که آنان ترجیح می دهند را انتخاب نماید. شکل بالاحق انتخاب گوناگون برنامه نویسان را زمان ساخت برنامه با ADFنشان میدهد.

در حقیقت چسبی که سبب میشودتا کامپوننت های گوناگون java EEبه یکدیگر متصل گردند

و در لایه ی منطق برنامه تکنولوژی های گوناگون مانند :EJB، web service،java Bean، JPA/Eclipse link/TOP linkمی تواند استفاده گردد.

لایه ی نمایش می تواند برنامه یSwingو تعامل با MS officeمورد استفاده قرار گیرد و همچنین در صورت استفاده از محیط Htmlو تحت وب می تواند از JSFو JSPو ADF facesاستفاده نماید . لایه منطق برنامه ها این لایه در حقیقت تعامل با لایه ثبت داده را مدیریت میکند

.این لایه سرویسهایی مانند : تثبیت داده ،object /relation mapping، transaction manager، business layer execution، را فراهم می نماید.

این لایه در Oracle ADFمی تواند توسط یکی از تکنولوژیهای زیر پیاده سازی گردد. یک کلاس ساده ی جاوا، EJB 2.1/3.0،web service، JPA objects، Oracle ADF BC لایه ی کنترل این لایه جریان منطقی برنامه را هدایت می کند و ورودی های کاربر را به سرانجام میرساند. بعنوان مثال زمانیکه کاربر بر روی دکمه ی جستجوروی صفحه کلیک می کند ، لایه ی کنترل تشخیص می دهد که چه عملیاتی باید به انجام برسد

(عملیات جستجو) و به کدام صفحه باید برود( صفحه ی نتیجه ی جستجو) برای برنامه های تحت وب در لایه ی کنترل سه حق انتخاب وجود دارد (برنامه های غیر تحت وب لایه ی کنترل ندارند) 1-Oracle ADF controllerکه کامل ترین مجموعه ی کنترلی می باشد. 2-JSF controller 3-Apache Struts بطور معمول جریان برنامه توسط یک دیاگرام شامل صفحات و جریان بین صفحات مشخص می گرددفرقی ندارد که کدامیک از گزینه های بالا را استفاده نمایید. با استفاده ازcontrollerOracle ADFمی توانید

یک برنامه ی بزرگ را به اجزای کوچکتر تجزیه نمایید این موضوع را با استفاده از Task flowها صورت می پذیرد. لایه ی نمایش این لایه می تواندبر پایه ی html، JSP،، JSF، ، XMLباشد .و میتواند بصورت بر پایه وب یا بصورت برنامه ی DESKTOPو مبتنی بر سرویس دهنده –سرویس گیرنده باشد . در ضمن این لایه میتواند بر پایه پیاده سازی دستگاه های Mobileباشد مانند گوشی همراه لایه مدل این لایه باعث ایجاد ارتباط بین لایه ی منطبق برنامه با سایر لایه ها می باشد که از لایه منطق برنامه استفاده می نماید در حقیقت چون منطق برنامه می تواند مختلف باشد یک لایه (لایه ی مدل) بر روی آن قرار می گیرد

تا نحوه ی ارتباط با آن برای سایر لایه ها یکسان باشد. این لایه دو کامپوننت اصلی دارد data control،data bindings که برای تعریف رابط استفاده از آنها از فایل های XMLاستفاده می شود. Data Bindingsمتد ها و فیلد های نوشته شده در Data Controlرا در دسترس لایه ی نمایش قرار میدهد و باعث جداسازی بین لایه ی داده و نمایش میگردد. بنا بر معماری بر پایه متا این لایه سبب می شود تا برنامه نویس در صورت تغییر تکنولوژی مورد استفاده در لایه ی منطق برنامه تغییری در برنامه نویسی خود احساس نکند . این لایه بر پایه ی JSR-227می باشد که مبین ارتباط داده ها و دسترسی به داده ها در J2EEمی باشد هدف اینJSRاستاندارد کردن ارتباط داده ها می باشد. خلاقیت بهمراه حق انتخاب برنامه نویسان می توانند از تکنولوژی های گوناگون در هریک از لایه ها استفاده نمایند و با انتخاب هر یک از این تکنولوژی ها تجربه ی یکسانی از برنامه نویسی داشته باشند. بعنوان مثال همان الگو و متد در ساخت برنامه ی ADF Swingاستفاده می شود که در ساخت برنامه با ADF Facesمورد استفاده قرار میگیرد. مزیت های Oracle ADF پیاده سازی JAVA EEبه صورت گرافیکی و تعریف یک بخش مهم از مفید سازی یک چهار چوب توسعه ی نرم افزار وجود یک ابزار توسعه می باشد که برنامه نویسی با آن چهارچوب را ساده تر نماید. اراکل در هرلایه ازADFابزار های گرافیکی ارائه می دهد که امکان استفاده از چهارچوب ADFرا به راحتی فراهم می نماید. توسعه ی سرویس های منطقی ابزار JDERLOPERراه های متعددی برای ساخت سرویس منطقی ارائه میدهد مانند :EJB/GPA،Web services، ADF BC زمان ایجاد این سرویس منطقی این امکان وجود دارد که با استفاده از ویزارد این سرویس های منطقی را ایجاد نمائید. بعد از ایجاد این سرویس ها تنها با استفاده از یک کلیک راست کافیست تا این سرویس به یک Web serviceتبدیل گردند یا به راحتی یک وب سرویسSDOایجاد نمائید. از این میان ADF BCکه مخفف ADFBusiness Component می باشد یک چهار چوب می باشد که بر روی ساخت objectها تمرکز داشته و به صورت یک روش تعریفی می باشد. این چهار چوب سرویس های آماده را ارائه میدهد مانند transaction management، resource pooling، locking ، translation، object-relationalو همچنین تعریف rulesValidation. برنامه نویسانی که قبلا تجربه برنامه نویسی با زبان های 4GLرا داشته باشند

، ADF BC را به راحتی درک می نمایند . ADF BCبر روی الگو های معروف Java EEبنا نهاده شده است و بهمین دلیل کارایی و استحکام آن تضمین شده است. توسعه ی رابط کاربری امکان توسعه به صورت گرافیکی و تعریفی امری است کهدر JDeveloperبه آن بسیار بها داده شده است تا سرعت توسعه را بالا بردهو سبب شود تا برنامه نویس بر روی برنامه در حال توسعه تمرکز کند تا بر روی توسعه ی برنامه های پیچیدهزیر ساخت. در زیر لیست مختصری از این گونه امکانات گرافیکی و تعریفی در لایه ی نمایش فراهم گردیده است. ·مدل سازی جریان بین صفحات در ADF controller: با استفاده از تعریف آن در یک دیاگرام بصورت گرافیکی ·یک محیط گرافیکی برای ویرایش صفحا ت JSF, HTML, JSP, Swingکه در این محیط ویرایشی یک امکان WYSIWYGبرای تمام کامپونت ها فراهم می آورد. ·امکان تعریف کامپوننت های تعریفی جهت اضافه کردن کامپونت جدید به لیست کامپوننت های تعریف شده در لایه ی نمایش ·امکانات استفاده ی مجدد ،چندین امکان جهت اطمینان از این که یک کد بتواند در جاهای مختلف دوباره استفاده گردد

در این چهار چوب بنا نهاده شده است. امکاناتی مانند ایجاد TASK Flow،ADF library، declarative componentهمه و همه قابلیت استفاده مجدد را تقویت مینمایند. ·ADF Facesیک کتابخانه ی بسیار قوی از کامپوننت های نمایشی می باشد که بر روی لایه ی استاندارد JSF APIنوشته شده است و از تکنولوژی های روز استفاده نموده است مانند: partial page renderingوAJAXتا بتواند بهترین و راحت ترین تجربه کار در لایه نمایش را برای کاربران فراهم آورد. اتصال کامپوننت های لایه ی سرویس منطقی به لایه ی نمایش ابزارJDeveloperیک راه حل سادهبرای اتصال کامپوننت های لایه ی سرویس منطقی برنامه به لایه ی کنترل و لایه نمایش دارد که با استفاده از پیاده سازی JSRمی باشد که همان data control می باشد پالت data controlیک نما از لایه سرویس منطقی را ایجاد می نماید. برنامه نویسان به راحتی می توانند با استفاده از روشdrag-and-dropاجزای این لایه را در صفحه ی وب قرار دهند و آنها را به اجزای نمایشی صفحه متصل نماید. مزیت های ADFبه سایر چهار چوب ها مزیت اصلی که باعث ایجاد پیشرفت این چهارچوب نسبت به سایر چهار چوب ها یJEEباشد به قرار زیر است : End-to-End Solution چهار چوب ADFتنها بر روی یک لایه ی خاص تمرکز نمی کند بلکه یک راه حل یکپارچه و کامل از تمام لایه های JAVA EEرا ارائه می دهد وتمام فازهای توسعه ی سیستم را از آغاز تا پشتیبانی را پوشش می دهد.

محیط توسعه بسیاری از چهارچوب های JAVA EEدارای فقدان یک محیط توسعه مناسبمی باشند

اما ابزار توسعه Oracle JDeveloperکمک می کند تا با استفاده از محیط گرافیکی و تعریفی نیاز به کد نویسی را به حداقل برساند و این موضوع سبب میشود تا ابزار بسیار مناسبی برای توسعه ی سیستم با Oracle ADFباشد. این ویژگی تعریفی و گرافیکی موجب می شود تا آموزش برنامه نویسی با محیط ADFنیز به حداقل برسد بخصوص برای افرادی که با محیط های 4GLآشنایی دارند. البته اگر برنامه نویسان بخواهند با IDEهای دیگری غیر از JDeveloperنیز برنامه نویسی انجام دهند

این امکان برای آنان وجود دارد زیرا ADFیک چهار چوب استاندارد می باشد. عدموابستگی به محیط اجرا بسیاری از چهارچوب ها باعث می شوند تا برنامه نویس به یک شرکت نرم افزاری خاص محدود گردند اما محیط اجرای ADFمیتواند به روی هر سروری اجرا گرددولایه ی ADFBCمیتواند به هر پایگاه دادهبر پایه ی SQL-92متصل گردد. تعهد به تکنولوژی این موضوع بسیار مهم است که شرکت اوراکل این تکنولوژی را به عنوان نسل بعدی تکنولوژی های خود پذیرفته است

و حتی برای توسعه های داخلی خود نیز از این چهار چوب استفاده می کند برای توسعه ی ، ,Web application, Wireless Application, Portal Applicationاز این چهارچوب استفاده میکند لذا به این تکنولوژی تعهد پشتیبانی ، توسعه و بهبود خواهد داشت. Meta Data-Driven تمام لایه های دخیل در چهارچوب ADF، جهت توسعه از فایل های XMLبرای تعریف استفاده می نماید و هرکجا که لازم باشد کد های خصوصی سازی جاوا نوشته می گردد. استفاده از Label، Validation، Tool tipاز جمله مواردی می باشد

که در فایل های XMLتعریف می گردد و سبب می شود تا این اطلاعات به محیط نمایش وابسته نباشد. بهبود Reusability محیط توسعه JDeveloperبه همراهADFباعث می شود

تا امکانات گسترده ای از Reusabilityدر حین توسعه برای برنامه نویسان ایجاد گردد

مانند JSF Template،Task flow،Task flow Template،ADFlibrary، JSF fragment، .. پشتیبانی ADFمحصول رسمی شرکت اراکل می باشد و توسط دپارتمان Supportشرکت اراکل به صورت جامع و 24 ساعته پشتیبانی میگردد. آموزش اراکل منابع آموزشی بسیار کاملی از این محصول توسط وب سایت و آموزشگاه های متصل به اوراکل برای استفاده کنندگان فراهم آورده است . خلاصه محیط Oracle ADFامکان توسعه ی Java EEبه صورت بسیار ساده تری فراهم آورده است با استفاده از پیاده سازیها و الگو ها و زیر ساخت های کامل از Java EEو هم چنین این امکان را فراهم آورده

استتا با استفاده از محیط توسعه ی JDeveloperو امکانات گرافیکی و تعریفی که برای ADFایجاد گردیده است سرعت توسعه را بسیار کاهش دهد جهت مشاهده ی جزئیاتبیشتر از این چهار چوب به آدرس زیر مراجعه نمایید: http://otn.oracle.com/products/jdev

آدرس دفتر فروش

تهران نازی آباد خیابان فاطمی خیابان کارگر سامانی پ۱۶۲

تلفن :۵۵۵۳۰۷۶۱-۰۲۱ و ۰۹۱۹۸۹۱۴۸۳۵  

Email : jalalimehdi@gmail.com

Website : www.softwareco.ir

خبرنامه

اطلاع از آخرین اخبار سایت دلفین