صفحات إكس
XPages هو تطبيق من IBM لـ JavaServer Faces مع بيئة تشغيل JavaScript من جانب الخادم وقاعدة بيانات NoSQL المدمجة IBM Domino . يسمح بعرض البيانات من IBM Notes وقواعد البيانات العلائقية لعملاء المتصفح على جميع المنصات.
يعتمد نموذج البرمجة على لغات ومعايير تطوير الويب، بما في ذلك جافا سكريبت ، وأجاكس ، وجافا ، ومجموعة أدوات دوجو ، وجافا سكريبت من جانب الخادم ، وجافا سيرفر فيسز . يستخدم XPages منصة IBM Domino ، وهي منصة تطوير التطبيقات السريعة من IBM ، والتي تتضمن وظائف مثل قاعدة البيانات الموجهة نحو المستندات .
تقنيات الواجهة الأمامية
بفضل استخدام معايير الويب، يمكن الوصول إلى تطبيقات XPages عبر متصفحات الويب والأجهزة المحمولة، مما يتيح للمطور إمكانية إنشاء تطبيقات متعددة المنصات. أما بالنسبة لواجهة المستخدم، فتركز XPages على معايير تطوير الويب HTML و CSS وJavaScript. بالإضافة إلى ذلك، يمكن استخدام السمات لإدارة ملفات CSS المتعددة، [ 1 ] وتأتي XPages مزودة بسمات افتراضية، مثل سمة OneUI. [ 2 ]
يمكن استخدام العديد من أطر عمل جافا سكريبت لمنطق جانب العميل، مع العلم أن XPages يأتي مزودًا بمجموعة أدوات Dojo ، ويمكن الرجوع بسهولة إلى عناصر تحكم Dojo في تطبيقات XPages. كما يستخدم XPages مكتبة Dojo داخليًا لبعض الوظائف لتسهيل استخدام الميزات الرئيسية دون الحاجة إلى كتابة كود Dojo. تحتوي مكتبة جافا سكريبت خاصة بـ XPages على وظائف إضافية مفيدة، مثل التحقق من صحة حقول جانب العميل. [ 3 ] بالإضافة إلى منطق جانب العميل، يمكن استخدام Dojo أيضًا لإنشاء عناصر واجهة مستخدم ورسوم بيانية غنية. [ 4 ]
كما هو الحال مع أي تطبيق ويب، يمكن لتطبيقات XPages استخدام خدمات REST . توفر XPages أيضًا آليات سهلة لربط مصادر البيانات بعناصر واجهة المستخدم، مما يغني عن كتابة أي كود في كثير من الحالات. بالإضافة إلى ذلك، تسمح XPages بتحديث أجزاء محددة من الصفحة فقط عبر Ajax عند إرسال البيانات.
تقنيات الواجهة الخلفية
يتم تطوير تطبيقات XPages باستخدام IBM Domino Designer. يتيح Designer تنفيذ العديد من السيناريوهات الرئيسية بشكل تصريحي وسريع، على سبيل المثال، لعرض قائمة من مدخلات قاعدة البيانات. بالإضافة إلى ذلك، يمكن كتابة منطق الأعمال باستخدام كلٍ من JavaScript وJava. تعتمد XPages داخليًا على JavaServer Faces ، ولكن مصادر صفحات XPages هي مشتق XML يُسمى XSP، والذي يُترجم إلى كود Java عند تشغيل التطبيقات. أثناء التشغيل، يُعيد هذا الكود HTML إلى مختلف العملاء.
للوصول إلى البيانات، يستخدم كل من XPages وDomino Designer مصادر البيانات . يمكن ربط هذه المصادر بعناصر واجهة المستخدم على الصفحات. تظهر عناصر واجهة المستخدم وأنواع أخرى من عناصر التحكم في لوحة عناصر التحكم في Domino Designer، ويمكن سحبها وإفلاتها على الصفحات. يوفر Domino Designer أيضًا وظائف إضافية لتسهيل الاستخدام، مثل التحقق من صحة الحقول والترجمات. يمكن تقسيم وظائف XPages إلى وحدات نمطية في عناصر تحكم مخصصة ، وهي عناصر تحكم XPages قابلة لإعادة الاستخدام في صفحات XPages متعددة، ويمكن تخصيصها بناءً على السياق.
يُستخدم جافا سكريبت من جانب الخادم بشكل أساسي لكتابة كود الواجهة الخلفية للأعمال. توجد واجهات برمجة تطبيقات (APIs) للوصول إلى قاعدة البيانات الموجهة نحو المستندات وسياق XPages. [ 5 ] بما أن XPages مبنية على JSF، وJSF معيار جافا، فمن الممكن أيضًا استدعاء كود Java SDK القياسي من كود جافا سكريبت، وكتابة كود جافا مخصص باستخدام مكونات JSF المُدارة.
يمكن توسيع بيئة تشغيل XPages باستخدام واجهة برمجة التطبيقات Extensibility API المبنية على JavaServer Faces. [ 6 ] يمكن لمطوري البرامج المستقلين (ISVs) الاستفادة من هذه الميزة، على سبيل المثال، إذا رغبوا في توفير مكتباتهم الخاصة من عناصر تحكم XPages.
التخزين: قاعدة بيانات موجهة نحو المستندات
يُعدّ XPages جزءًا من IBM Domino، ويستفيد من إمكانيات Domino المُثبتة والناضجة. يستخدم Domino قاعدة بيانات مُوجّهة نحو المستندات تُسمى NSF (مرفق تخزين الملاحظات) لإدارة البيانات شبه المهيكلة، مثل النصوص المنسقة والملفات. تُخزّن البيانات على شكل مستندات، وتتيح طرق العرض إمكانية البحث عن مستندات مُحددة بكفاءة. [ 7 ] تحتوي المستندات على معرّفات فريدة، بالإضافة إلى حقول مُدمجة مثل اسم المؤلف الأخير وتاريخ آخر تعديل، وما إلى ذلك، كما تحتوي على حقول مُخصصة خاصة بالتطبيق. يمكن أن تحتوي المستندات على نصوص منسقة، والتي قد تشمل نصوصًا وصورًا مُنسقة (MIME)، أو ملفات مُرفقة كاملة. يُمكن الاستعلام عن المستندات عبر واجهات برمجة التطبيقات وطرق العرض. [ 8 ] يدعم Domino أيضًا البحث النصي الكامل في قاعدة البيانات بأكملها كميزة مُدمجة.
يمكن نشر تطبيقات XPages على خوادم Domino أو مجموعة من خوادم Domino باستخدام IBM Domino Administrator وآلية النسخ/المزامنة المدمجة في IBM Domino. تدعم آلية النسخ اكتشاف التعارضات وحلها ثنائي الاتجاه في البيئات الموزعة.
مجتمع
يدير مجتمع مطوري XPages موقع XPages.info الإلكتروني الذي يوفر معلومات متنوعة حول XPages، بما في ذلك كيفية البدء، والتنزيلات، والموارد، والعروض التوضيحية. أما OpenNTF فهو موقع مفتوح المصدر للتطبيقات المبنية على IBM Domino، ويحتوي على العديد من التطبيقات وأدوات التحكم في التطوير بموجب ترخيص Apache .
تاريخ
تعود جذور تقنية XPages إلى عام 2000. فقد ابتكرت مجموعة Trilog، الشريك التجاري لشركة IBM، نموذجًا لتطوير تطبيقات الويب السريع قائمًا على المكونات، يُسمى XSP، وهو مشابه لنموذج Domino RAD، ولكنه يعتمد على J2EE وXML والمعايير المفتوحة. وفي أغسطس 2004، استحوذت IBM على أصول تقنية XSP من مجموعة Trilog بهدف توفير أداة RAD لمنصة IBM Workplace تُشابه Domino Designer.
بدأت تقنية XPages، المبنية على JSF وJ2EE، مسيرتها في شركة IBM بين عامي 2005 و2007، ضمن برنامج IBM Lotus Workplace Designer الذي توقف إنتاجه لاحقًا، ثم IBM Lotus Component Designer، تحت الاسم الرمزي "XFaces". في منتصف عام 2007، تحولت تقنية XFaces إلى "XPages" واعتمدها برنامج IBM Lotus Notes Domino، حيث أُدمجت في دورة تطوير الإصدار 8.5. عُرضت XPages لأول مرة في مؤتمر Lotusphere 2008 (AD303: تحويل تطبيقات الويب في IBM Lotus Domino باستخدام IBM Lotus Domino Designer، المتحدثان: روكي أوليفر ومارتن دونيلي). صدر IBM Lotus Notes Domino 8.5 في ديسمبر 2008، بالتزامن مع مؤتمر Lotusphere 2009، حيث كان من أبرز فعاليات المؤتمر.
واصل IBM Lotus Notes Domino 8.5.1 تطوير تقنية XPages، بما في ذلك تشغيل تطبيقات XPages داخل برنامج Notes Client. وتضمن هذا الإصدار أيضًا العديد من التحسينات على الأداء وواجهة المستخدم، مما ساعد تطبيقات XPages على تحسين أدائها وقابليتها للتوسع. أما IBM Lotus Notes Domino 8.5.2، فقد احتوى على المزيد من التحسينات والإضافات إلى مجموعة ميزات XPages.
استُلهم اسم "XPages" من فكرة التسمية الأصلية XSP، حيث كان XSP اختصارًا لـ "XML Server Pages". بعد إعادة تسمية XSP إلى "XFaces"، اختارت IBM اسم "XPages" كاسم رمزي للمشروع الخاص بتقنية ما قبل الإصدار المُضمنة في Domino Designer. ونظرًا لصعوبة إيجاد بديل جذاب، استقر اسم المشروع.
مراجع
- ↑ "اجعل تطبيقات XPage الخاصة بك مميزة باستخدام CSS والقوالب.( ملف PDF) . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 4 أكتوبر 2013. تم الاطلاع عليه بتاريخ 12 نوفمبر 2010 .
- ↑ "سمة OneUI" . مؤرشفة من الأصل بتاريخ 26-09-2013 . تم الاطلاع عليها بتاريخ 12-11-2010 .
- ↑ "مكتبة جافا سكريبت لـ XPages" . مؤرشفة من الأصل بتاريخ 27-05-2010 . تم الاطلاع عليها بتاريخ 12-11-2010 .
- ↑ مجموعة أدوات الدوجو
- ↑ مرجع واجهات برمجة التطبيقات
- ↑ واجهة برمجة تطبيقات XPages القابلة للتوسيع
- ↑ قاعدة البيانات الموجهة نحو المستندات (مؤرشفة بتاريخ 10 يناير 2011 على موقع Wayback Machine) هي جزء أساسي من بنية Domino ( مؤرشفة بتاريخ 2 مايو 2013 على موقع Wayback Machine) . لاحظ أن هاتين الوثيقتين بصيغة PDF قديمتان، لكنهما لا تزالان تقدمان نظرة عامة جيدة على المفاهيم الأساسية.
- ↑ فئات جافا من الألف إلى الياء
للمزيد من القراءة
- مارتن دونيلي، مارك والاس، وتوني ماكجوكين. (2011). إتقان XPages: دليل خطوة بخطوة لتطوير تطبيقات XPages ولغة XSP. دار نشر IBM. رقم ISBN 0132486318
- مارتن دونيلي، مارك والاس، وتوني ماكجوكين. (2014). إتقان XPages: دليل خطوة بخطوة لتطوير تطبيقات XPages ولغة XSP. الطبعة الثانية. دار نشر IBM. ISBN 978-0133373370
- مكتبة ملحقات XPages: دليل خطوة بخطوة للجيل التالي من مكونات XPages (2012) - منشورات IBM. رقم ISBN 978-0132901819
- دليل أوامر XPages المحمول: مورد موجز لتطوير تطبيقات XPages ولغة XSP (2012) - منشورات IBM - رقم ISBN 978-0132943055
روابط خارجية
- برنامج IBM Lotus
