الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

متى يكون Apex أفضل لمؤسستك من Adf ؟

Featured Replies

بتاريخ:

السلام عليكم ورحمة الله

 

Oracle ADF بلا شك من أهم الDevelopment Frameworks عند Oracle

 وهو خيار استراتيجي ووحيد للعديد من الموسسات لعدة أسباب ذكرناها في النقاش الماتع في الموضوع التالي

http://www.araboug.org/ib/index.php?showtopic=67550

 

 

لكن هل هنالك حالات أخرى يكون APEX هو الخيار الانسب لتطوير أنظمة مؤسستك!

 

سؤالنا المحدد هو:

متى يكون APEX أفضل لمؤسستك من ADF ؟

 

نأمل من الكرام الذين عملوا بكلا التقنيتين المشاركة في هذا الموضوع بنقاط محددة

وبمشاركات مختصرة مع المصادر قدر الامكان

لتحقيق أكبر فائدة للمختص العربي في مجال تقنية المعلومات

 

دمتم بخير وعافية

  • الردود 31
  • المشاهدات 7.3k
  • البداية
  • اخر رد

أكثر المشاركين في هذا الموضوع

Most Popular Posts

  • فى نقطة مهمة اوى لو بنتكلم على المؤسسات.  لو هتختار تقنية لازم تكون متأكد انك هتلاقى مبرمجين يعرفوا يشتغلوا بيها, وللأسف الناس الى تعرف أبكس فى مصر مثلا تتعد على الاصابع. ومحدش بيتجهله لانه مش شايف ط

  • من الحالات التي يكون فيها اوركل Apex أفضل من اوركل ADF هي عند ال migration لبرنامج تم بناءه باوركل Forms، وكلما كان البرنامج الأصلي data driven كلما كان ابيكس أنسب.

  • محمود ربيع
    محمود ربيع

    من الحالات التي يكون فيها اوركل Apex أفضل من اوركل ADF هي عند ال migration لبرنامج تم بناءه باوركل Forms، وكلما كان البرنامج الأصلي data driven كلما كان ابيكس أنسب. بارك الله فيك يا بشمهندس وليد  نقط

بتاريخ:

فى نقطة مهمة اوى لو بنتكلم على المؤسسات. 

لو هتختار تقنية لازم تكون متأكد انك هتلاقى مبرمجين يعرفوا يشتغلوا بيها, وللأسف الناس الى تعرف أبكس فى مصر مثلا تتعد على الاصابع. ومحدش بيتجهله لانه مش شايف طلب عليه اصلا من الشركات. 

بتاريخ:
  • كاتب الموضوع

ممتاز .... هذه نقطة مهمة جدا ...

 

(١) قبل أن تذكر نقاط تفضيل تقنية عن اخرى وفقا لظروف واحتياجات مؤسستك لابد أن تتأكد أولا هل سيسهل عليك توفير مبرمجين Oracle APEX من الأساس .... فهذا عامل أمان مهم جدا

 

لكن اذا فرضنا تواجدهم ، فمتى يكون APEX أفضل لمؤسستك من ADF ؟

 

المشاركات مرحب بها من الجميع 

 

دمتم بخير وعافية

بتاريخ:

من الحالات التي يكون فيها اوركل Apex أفضل من اوركل ADF هي عند ال migration لبرنامج تم بناءه باوركل Forms، وكلما كان البرنامج الأصلي data driven كلما كان ابيكس أنسب.

بتاريخ:
  • كاتب الموضوع

من الحالات التي يكون فيها اوركل Apex أفضل من اوركل ADF هي عند ال migration لبرنامج تم بناءه باوركل Forms، وكلما كان البرنامج الأصلي data driven كلما كان ابيكس أنسب.

بارك الله فيك يا بشمهندس وليد

 

نقطة في غاية الأهمية والقوة واتفق معك فيها.

 

(٢) الADF نمط تصميم البرنامج او النظام فيه UI-Driven

إنما APEX و Forms كلاهما Data-Driven

 

فلذلك اذا كانت مؤسستك عندها Legacy System مبني بالOracle Forms فان الخيار الانسب للModernization هو بلا شك Oracle APEX

تم تعديل بواسطة محمود ربيع

بتاريخ:
  • كاتب الموضوع

ايضا أضيف نقطتين هامتين الى ما تفضل به الكرام

(٣) الCost في حالة APEX منصبة على Database فقط
تكرما راجعوا الArchitecture الخاص بالAPEX
وهو أرخص من ADF الذي في حالته ستضطر شراء Licenses اكثر للMiddleware Layers التي ستستخدمها مؤسستك

(٤) الScalability and High Availability ستكون اسهل في الAPEX
فهي منصبة ومركزة على الDatabase إنما في حالة ADF فينبغي العمل
على عدة Layers

في انتظار مشاركات الكرام وتعليقاتهم

دمتم بخير وعافية

تم تعديل بواسطة محمود ربيع

بتاريخ:

تحت البند رقم (1) وهو عملية ال migration أو ال Modernization - كما تكرم المهندس محمود- أحب اضيف مثال حقيقي:
كان هناك برنامج مصمم باوركل Forms، للادارة المالية للجامعات، البرنامج كان متوسط الحجم حوالي 400 فورم، أكتر من الفين جدول وحوالي 300 db package، كمبرمج Forms لسنين عديدة لقيت ان التقنيتين يوجد بهم عناصر متشابهة للغاية -مما أدي بفضل الله لنجاح عملية ال migration- علي سبيل المثال:
- data block في ال Forms يقابها ال regions في الابيكس.

- Triggers في ال Forms يقابلها ال DAs في الابيكس.
- Program units في ال Forms يقابلها ال Processes في الابيكس.
اما بقي الميزة الأعظم، هي كتابة ال sql وال PL/SQL مباشرة في صفحات الابيكس، والتواصل مع الDB Packages بشكل مباشر وبدون أدني مجهود زائد.

 

العجيب في الأمر انه سبق هذا التحويل محاولة لم تكتمل لتحويل البرنامج من Forms الي ADF وللأسف لم تنجح، لما سألت الفريق القائم علي العمل ذكروا ان طبيعة البرنامج الاصلية كبرنامج أوركل فورمس مصمم تبعاً لل Best practices الخاصة بال Forms مختلفة الي حد كبير عن تقنية ال ADF وال Best practices الخاصة بيها، بينما أثناء تحويل الفريق -اللي اتشرفت بالعمل معهم- للبرنامج من Forms لابيكس وجدنا إن الموضوع منطقي وسلس.

@مهندس محمود، أتفق معك تماماً في النقاط 2،3،4 ...وبالذات النقطة 3، لأنها من أكتر النقاط حسماً في عصر Cost-cutting وال Open Source 

هنا تجربة شركة سبقتنا في التحويل وكانت من أهم العوامل اللي ساعدت شركتي إنها تتوجه للابيكس بكل قوة، فيها تفاصيل دقيقة، ويمكن اللي اشتغل التقنيتين قبل كده هيجدها شديدة الفائدة، بس حتي اللي عنده معرفة بسيطة في التقنيتين هيجد معلومات قيمة جداً
 https://www.ogh.nl/downloads/OGH20110322_TONY_ANDREWS_AND_NIGEL_BLAIR_-_NORTHGATE.ppt

بتاريخ:

كما ذكرت أنه قد توجد عوامل غير فنية في الاختيار

لو الشركة يعمل بها مبرمجين فورم فهنا أسهل تدريبهم على APEX

ذك الأخ وليد عن عدم اكتمال تجربة التحويل إلى ADF وطبعاً يبحث الفريق عن أي تبرير بلا معنى فلا يوجد شئ اسمه برنامج مصمم للفورم ففي النهاية هو نظام له متطلبات ومدخلات ومخرجات

هذه نقطة هامة أن الفريق قد لا يكون مؤهلاً للعمل على تقنية ADF نظراً لأنه يتطلب مسار تدريبي أكبر

بتاريخ:
  • كاتب الموضوع

مشاركة متميزة جدا
وتجربة ينبغي قراءتها والاستفادة منها

لنأخذ منها النقطة التالية

(٥) المجهود الاقل في تطوير انظمة وبرامج APEX لانه ببساطة Rapid Application Development Framework
او لنقل Low Code Development Framework.

بتاريخ:
  • كاتب الموضوع

كما ذكرت أنه قد توجد عوامل غير فنية في الاختيار

لو الشركة يعمل بها مبرمجين فورم فهنا أسهل تدريبهم على APEX

ذك الأخ وليد عن عدم اكتمال تجربة التحويل إلى ADF وطبعاً يبحث الفريق عن أي تبرير بلا معنى فلا يوجد شئ اسمه برنامج مصمم للفورم ففي النهاية هو نظام له متطلبات ومدخلات ومخرجات

هذه نقطة هامة أن الفريق قد لا يكون مؤهلاً للعمل على تقنية ADF نظراً لأنه يتطلب مسار تدريبي أكبر

احسنت يا بشمهندس مصطفى

 

وهذه نقطة مهمة كالتي طرحها المهندس اسلام

 

Human Resources

Training

تم تعديل بواسطة محمود ربيع

بتاريخ:
  • كاتب الموضوع

استفدت ايضا من كلام المهندس مصطفى أمرا لعله من الجدير ذكره

(٦) المسار التدريبي في حالة ADF قد يكون أطول وأعقد بالنسبة لبعض المؤسسات
عن المسار التدريبي في حالة APEX الذي قد يكون اسهل لهذه المؤسسات

ايضا هذه نقطة نسبية تعتمد على محصول الكفاءات السابقة والحالية لكوادر مؤسستك

بتاريخ:
  • كاتب الموضوع

هذه نقطة تخص المبرمجين  Work Any Where

وكشخص عملت بالتقنيتين من الجدير بالذكر قولها 

 

(٧) APEX يتفوق في كون الDevelopment Environment فيه Web-based يمكن فتحها في أي مكان داخل المؤسسة او من اي مكان في العالم اذا كان نظامك Cloud-hosted 

آي أن كل ما تحتاجه هو Web Browser فقط

لكن في حالة Oracle ADF  فان ارتباطك محوري بالJDeveloper الرائع الذي لابد أن يكون على جهازك الذي ستعمل عليه

وايضا ان يكون جهازك متصلا بال Middleware Layers الاخرى التي تحتاجها في الBusiness Components الخاصة بك

تم تعديل بواسطة محمود ربيع

بتاريخ:

هذه نقطة تخص المبرمجين  Work Any Where

وكشخص عملت بالتقنيتين من الجدير بالذكر قولها 

 

(٧) APEX يتفوق في كون الDevelopment Environment فيه Web-based يمكن فتحها في أي مكان داخل المؤسسة او من اي مكان في العالم اذا كان نظامك Cloud-hosted 

آي أن كل ما تحتاجه هو Web Browser فقط

لكن في حالة Oracle ADF  فان ارتباطك محوري بالJDeveloper الرائع الذي لابد أن يكون على جهازك الذي ستعمل عليه

وايضا ان يكون جهازك متصلا بال Middleware Layers الاخرى التي تحتاجها في الBusiness Components الخاصة بك

 

هذا غير صحيح

بتاريخ:
  • كاتب الموضوع

صحح لي تكرما 

بتاريخ:

هذه نقطة تخص المبرمجين  Work Any Where

وكشخص عملت بالتقنيتين من الجدير بالذكر قولها 

 

(٧) APEX يتفوق في كون الDevelopment Environment فيه Web-based يمكن فتحها في أي مكان داخل المؤسسة او من اي مكان في العالم اذا كان نظامك Cloud-hosted 

آي أن كل ما تحتاجه هو Web Browser فقط

لكن في حالة Oracle ADF  فان ارتباطك محوري بالJDeveloper الرائع الذي لابد أن يكون على جهازك الذي ستعمل عليه

وايضا ان يكون جهازك متصلا بال Middleware Layers الاخرى التي تحتاجها في الBusiness Components الخاصة بك

مش معاك يا بشمهندس. انا اعلم ان الـ ADF قادر على عمل Web Apps, مش عارف هو Web Based or Web enabled بس عموما الـ Oracle ADF Community معمول بالـ ADF. 

تم تعديل بواسطة eslam elbyaly

بتاريخ:

صحح لي تكرما 

ADF تقنية وب ولا يلزم JDeveloper للتشغيل

هو مطلوب فقط أثناء التطوير والتعديل

بتاريخ:
  • كاتب الموضوع

بشمهندس اسلام وبشمهندس مصطفى

شكر الله لكم تفاعلكم الكريم واثراءكم للموضوع

ارجعوا رعاكم الله للنقطة (٧)
ستجدون أنني ذكرت ال
Development Environment ولَم اقل Runtime Environment

بعبارة اخرى لو كان المهندس اسلام والمهندس محمود مبرمجي ADF في الفريق A
وكان المهندس مصطفى والمهندس وليد مبرمجي APEX في الفريق B

فان الDevelopment Environment على اجهزة الفريق B هي فقط browsers يستطيعون العمل من اي مكان فقط رابط الوصول للORDS يكفيهم

إنما الفريق A فانهم سيحتاجون JDeveloper على اي بجهاز يقومون من خلاله بالتطوير والبرمجة والبناء

ومعلوم ان ADF بامكانه بناء Web Applications لكن نحن لا نتكلم عن الuser وإنما نتكلم عن الprogrammer او الDeveloper بقولنا
Work Any Where

وقد قدمت كلامي لو رجعتم اليه مشكورين بان هذه نقطة تخص المبرمجين

ارجو اكون وضحت اللبس الذي حصل

دمتم بخير وعافية

بتاريخ:

انا افتكرتها Deployment لان ده دايما الشئ الى بيذكر كميزة ولان كونك كديفيلوبر هتحتاج تسطب سوفتوير عندك فده المتعارف عليه وده مش بيعتبر عيب لانه بيحصل مرة واحدة ومش بيسبب أزمة يعنى. 

حتى فى الابكس هتسطب الداتابيز. 

فى المجمل ده ميعتبرش عيب يعنى او ممكن تكون نقطة تفوق لكنها غير ذات أهمية فى نظرى. 

بتاريخ:
  • كاتب الموضوع

ما قصدته في النقطة (٧) هو مرونة التحرك والعمل من اي مكان ومن اي جهاز كل ما تحتاجه هو Browser

 

تخيل معي سلمك الله انك عامل Cloud Hosting  للAPEX يعني لم تقم بتنزيل شيء على الاطلاق ...

 

كم عدد الاجهزة التي يمكن ان تشتغل منها مباشرة وتعمل Development للApplication 

الاجابة هي أي جهاز عليه Browser وواصل على الانترنت

و عندك 

apex.oracle.com 

خير مثال

 

لكن في حالة ADF فلو اشتقت للJava مثلا وعندك الحماسة والهمة انك تعمل Development ستجد أنه يلزمك بلا شك

الJDeveloper 

 

ورأيك محترم اذا رأيتها ليست نقطة ذات أهمية

لكن من وجهة نظري المتواضعة أراها نقطة مهمة جدا 

وهي تخدم وتشجع على

RAD

Rapid Application Development

 

دمت بود وعافية

تم تعديل بواسطة محمود ربيع

بتاريخ:
  • كاتب الموضوع

النقطة (٨)

مبرمجو APEX يتمتعون بوجود Free Evaluaion Instance هي
apex.oracle.com
ولها قيمة كبيرة واهمية عظمى للمتعلمين APEX
حيث انهم من خلالها يستطيعون انشاء
Free Workspace
ويكتبون وينشؤون فيه
Free Applications
قد يتعثرون في بعضها فيشاركون رابطها بصلاحيات Developer
وليس Admin للآخرين في
APEX Community
الذين بدورهم يساعدونهم في الحلول ، وهذا أراه من العوامل التي دلت على ذكاء Development Team القائم على APEX لانها سهلت وساعدت كثيرا في وصول وفهم الFeedbacks من مستخدمي تقنياتهم مما ساعدهم في الوصول الى ما هم عليه

في المقابل Oracle ADF على ضخامته وأهميته الاستراتيجية لOracle فلم اجد فيه تلك الEvaluation Instance الشبيهة بقيمة apex.oracle.com

دمتم بخير وعافية

بتاريخ:
  • كاتب الموضوع

للتذكير والتنظيم بعد اذن الكرام

اذا كان هنالك نقاط تفوق لADF على APEX
فلنقم بإضافتها في الموضوع الاخر الذي أنشأه المهندس اسلام
وقد أضاف المهندس درويش نقطة وأضفنا ايضا نقطتين (وصلنا الى ٨ نقاط هناك)

http://www.araboug.org/ib/index.php?showtopic=67550&page=4&do=findComment&comment=296391

هدفنا باذن الله ان يكون الموضوعان مرجعين للمبرمج العربي او لصاحب المؤسسة المختص بتقنية المعلومات ليساعدها على الEvaluation واتخاذ القرار
اي هذه الFrameworks الرائعة جميعها انسب وأفضل له

المهم لا يذهب الى IBM او SAP
:)

تم تعديل بواسطة محمود ربيع

  • بعد 2 أسابيع...
بتاريخ:

السلام عليكم 

من خبرتي المتواضعة بالAPEX و الADF فان للذي لا يعرف APEX مبني داخل قاعدة البيانات يعني الملفات التي يتم تطويرها تخزن داخل الDB و اسمها السابق كان HTML DB  مما يعني ان حجم قاعدة البيانات على المدى البعيد رح يزداد  بشكل مهول APEX نظام مبني و يتم الاضافة عليه لتطبيقات جديدة يعني مش من الصفر تتم عملية التطوير WEB APPLICATION BUILDER يعني كتير اشياء مطورة و جاهزة ،APEX لا يوجد فيها JDBC يعني انت مجبر على العمل على قاعدة البيانات اللي الابكس مخزن داخلها عدا ذلك يكون الربط مع قاعدة بيانات خارجية باستخدام DB link و هذه طريقة لا يمكن الاعتماد عليها الى بالحاجة للربط بشكل ضيق ،و طبعا اللي بعمل ببئية التطوير فهي سهلة بالمجمل لامور السهلة و لكن لايوجد فيه طبقات يعني مثلا تتطر على كل ريبروت وضع اQUERY و تكرارها بكل مكان و عند التعديل تحتاج لوقت طويل بسبب انك تحتاج التعديل في كل كائن لوحده.

 

بخصوص ADF فهي عبارة عن Framework يعني اداة للتطوير و تعتمد تقنية MVC و تعتبر من الادوات التي تم تطوير فيها اوراكل فيوجن ،طبعا ال ADF بخلاف ابكس تعمل على جميع قواعد البيانات و تسخدم JDBC التي هيه خواص اساسية لاي اداة للتطوير و تعتمل مبدأ MVC اللي ينكمن المسخدم من انشاء ال Model مرة واحدة و استخدامه في عدة كائنات مما يختصر الوقت و الجهد ،طبعا الadf اصعب من الابكس في بعض الامور لكن بالمجمل الامور البسيطة اللي تعملها بالابكس تعملها ايضا بالاadf بشكل سريع و فعال و adf تعتمد على الجافا اللي تعتبر امكانياتها مهولة   ،،،،،،طبعا لا ننسى خطر اختراق الابكس بسبب ان النظام داخل قاعدة البيانات عكس الadf اللي منقسم لطبقات حيث ان قاعدة البيانات منعزلة عن سيرفرات التي يخزن عليه ملقات البرنامج .

 

 

و شكرا

بتاريخ:
  • كاتب الموضوع

وعليكم السلام ورحمة الله

 

شكر الله لكم مشاركتك الكريمة مهندس عمر

 

هنالك بعض الملاحظات عليها ينبغي توضيحها ولنبدأ بالاولى

 

APEX مبني داخل قاعدة البيانات يعني الملفات التي يتم تطويرها تخزن داخل الDB و اسمها السابق كان HTML DB  مما يعني ان حجم قاعدة البيانات على المدى البعيد رح يزداد  بشكل مهول

 

(١) ما يتم تخزينه في جداول قاعدة البيانات هو سجلات بيانات تصف الPage Components أو الPage Attributes وليس الHTML الخاص بالصفحة.... 

 

وللتوضيح أكثر اذا دخلتم على

Workspace Utilities

Cross Application Report

Application Attributes

 

ستجد أن الApplicationالواحد يتم تخزين  الComponents  له في جداول مختلفة يمكن الاستعلام عنها بل واستخدامها لبناء Dynamic Components أخرى من خلال Dictionary Views معينة .... وهذه ال Components كما يلي:

Regions

Items

Buttons

Branches

Validations

Processes

List of Values

Interactive Reports

Classic Reports

Application Comment

Authentication Schemes

Authorization Schemes

Plugins

...

 

المرجع

https://docs.oracle.com/database/121/HTMDB/bldr_app_rpt.htm#HTMDB04012

 

 

(٢) APEX كان اسمه HTML DB بالفعل ولكن كان هذا حتى عام 2005 أي قبل ١٣ عاما من الان

المرجع

https://en.wikipedia.org/wiki/Oracle_Application_Express

 

ودمتم بخير وعافية

تم تعديل بواسطة محمود ربيع

  • بعد 2 أسابيع...
بتاريخ:

السلام عليكم ورحمة الله

 

جزاكم الله خيراً.

 

اسأل عن كيفية عمل Matrix Report في Apex

بتاريخ:

الاخ محمود ربيع

 

السلام عليكم ورحمة الله

 

سألت عن موضوع كيفية عمل  Matrix Report في APEX

 

إذا تكرمت.

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.