مكتبات JavaScript، وICEfaces، وAdobe's Flash، وMicrosoft Silverlight، والآن HTML5، دخلت المنافسة العالمية للسيطرة على الشبكة إلى عصر جديد - عصر تطبيقات الإنترنت الغنية (RIA للاختصار، ويُسمى أيضًا تطبيق الإنترنت الغني باللغة الصينية).
الغرض من هذه المقالة هو تعريف ما هو RIA، وشرح سبب بدء الويب في الاقتراب من RIA، واستكشاف أطر عمل RIA المختلفة الموجودة اليوم، وتقديم نظرة عامة على بعض إيجابيات وسلبيات كل إطار، ومناقشة ما ستبدو هذه التقنيات الجديدة في حالة البقاء في المستقبل.
ما هو الريا؟
يشير ما يسمى RIA، أو تطبيق الشبكة الغنية، إلى تطبيق شبكة يمكنه العمل مثل برنامج سطح المكتب. قبل ظهور RIAs، تم إنشاء معظم تطبيقات الويب باستخدام صفحات ثابتة.
Sumo Paint عبارة عن RIA يعتمد على Flash ويتمتع بإمكانيات تحرير الرسومات مثل Photoshop.
على عكس تطبيقات سطح المكتب، غالبًا ما يتطلب أي تفاعل مع صفحة الويب إعادة تحميل صفحة جديدة تمامًا. من ناحية أخرى، تتمتع تطبيقات سطح المكتب بتفاعل مستخدم أفضل بكثير لأن كل المعالجة تتم على جهاز المستخدم نفسه، مما يوفر تجربة مستخدم أكثر سلاسة.
ونتيجة لذلك، بدأ مطورو البرامج يسألون أنفسهم: "هل يجب أن يكون منتجنا تطبيقًا لسطح المكتب أم تطبيق ويب؟"
هذا دائمًا سؤال عادل، حيث أن كلا النوعين من التطبيقات لهما إيجابيات وسلبيات خاصة بهما.
تتمتع تطبيقات سطح المكتب بتفاعل سلس مع المستخدم، ولكن يتم بيع البرامج وتعاني من مشكلات الإصدار والتحديث.
ومن ناحية أخرى، فإن تطبيقات الويب متاحة بسهولة عبر الإنترنت، وخالية من المشاكل المرتبطة بإصدارات البرامج وتحديثاتها، ولكنها تتمتع بتجربة تفاعلية سيئة للغاية مع المستخدم.
إذًا، كيف يمكنك الحصول على أفضل ما في العالمين؟
RIA هو الأفضل في كلا العالمين. يتم إصدار RIA عبر الإنترنت ويتمتع بتفاعلات مستخدم غنية جدًا. بفضل ظهور Ajax، وهي طريقة لتطبيقات الويب لإرسال طلبات الخادم دون تحديث، ظهرت تقنيات جديدة للانضمام إلى حركة RIA.
بناءً على هذه التقنيات، ظهرت العديد من أطر العمل لمساعدة المطورين على إنشاء ونشر تطبيقات الويب الغنية، مثل مكتبات JavaScript، وICEfaces، وAdobe Flash 4 (سلف Flex 3)، وMicrosoft Silverlight، وHTML5.
دعونا نناقش إطار عمل RIA واحدًا تلو الآخر.
مكتبة جافا سكريبت لتطبيقات الويب
تعد مكتبات JavaScript مثل jQuery وMooTools من بين التقنيات الأولى التي يمكن أن تساعد حقًا في نشر تطبيقات الويب الغنية والسلسة والتفاعلية. أنها توفر إطار عمل RIA الذي يتعامل مع وظائف الواجهة الأمامية من خلال الاستفادة من البرمجة النصية من جانب العميل. إنها ملفات Javascript أساسية مدمجة مع بعض الوظائف المفيدة التي تم اختبارها عبر المتصفحات. يمكنك استخدام Ajax، بالإضافة إلى التعامل مع التفاعلات الشائعة المستندة إلى الأحداث التي يحركها المستخدم، مثل إظهار المحتوى وإخفائه.
الأكثر شيوعًا حاليًا هي jQuery (خاصة استخدام jQuery UI)، وMooTools، وYIU (مكتبة واجهة مستخدم Yahoo)، وEXTJS. تتضمن هذه المكتبات مكونات RIA مثل الشبكات والمخططات وعناصر النموذج المعقدة، بالإضافة إلى أدوات للتعامل مع Ajax. الشيء الأكثر روعة هو أن معظم مكتبات JavaScript لتطوير الويب مفتوحة المصدر.
إذا كنت لا ترغب في شراء بيئة تطوير متكاملة (IDE)، ولكنك لا تزال تريد وظائف RIA رائعة واحترافية على موقع الويب الخاص بك، فإن مكتبات JavaScript هي خيار رائع.
تتضمن مواقع الويب التي تستخدم مكتبات JavaScript Google وDigg وYahoo وAmazon وMicrosoft وTwitter وBest Buy.
وجوه الجليد
يعد ICEfaces امتدادًا لإطار عمل JavaServer Faces (JSF) القياسي المصمم لتبسيط سير عمل المبرمج عن طريق إزالة JavaScript من المعادلة. بمعنى آخر، يتعامل ICEfaces مع كافة ملفات JavaScript/Ajax نيابةً عنك من خلال واجهة تطبيق Java. من خلال إزالة المقدمة المعقدة لوظائف JavaScript المخصصة هذه، تم تبسيط مهمة إنشاء تطبيقات الويب الغنية إلى حد كبير.
إذا كان غالبية فريقك من مطوري Java، أو إذا كان تطبيق الويب الخاص بك لا يتطلب مكونات معقدة لا تمتلكها ICEfaces الأخرى، أو إذا كان تطبيق الويب الخاص بك يعتمد على الأحداث، فإن استخدام ICEfaces يعد خيارًا جيدًا. إذا كان تطبيق الويب الخاص بك يعتمد على الأحداث، فتأكد من أنك تفهم أن ICEfaces لا يوفر تقنية "دفع الخادم" الحقيقية، والتي يدعمها HTML5 وFlash Builder 4 وSilverlight. ومع ذلك، في المقابل، يستخدم ICEfaces طريقة استقصاء طويلة لمحاكاة تقنية دفع الخادم.
تشمل المواقع التي تستخدم ICEfaces شركة Boeing وNASA وUnion Pacific وT-Mobile وBank of America.
أدوبي فلاش منشئ 4
لقد كان Flash موجودًا منذ فترة طويلة، ولكن إنشاء تطبيقات ويب كاملة باستخدام Flash كان أمرًا مرهقًا حتى تقديم Flex، وهو امتداد لـ Flash الذي يوفر مكونات ويب RIA.
الشيء الأكثر إثارة في Adobe Flash Builder 4 هو ميزاته المشتركة بين الأنظمة الأساسية والمتصفحات، مما يسمح للبرنامج بالعمل بنفس الطريقة على جميع أنظمة التشغيل وجميع المتصفحات. بالمقارنة مع جافا سكريبت، حيث تحتوي المتصفحات على محركات جافا سكريبت مختلفة لإدارة ومعالجة التعليمات البرمجية، فإن Adobe Flash لديه محرك واحد فقط، والذي يقوم المستخدمون بتثبيته من خلال المكون الإضافي لمتصفح Adobe Flash (والذي عادة ما يكون لديهم).
يمكن لتطبيقات Flash Builder 4 القيام بذلك لأنها مضمنة في صفحة HTML، مما يعني أن المتصفح نفسه ليس له أي تأثير على أداء التطبيق. وهذا يعني أنه يمكنك تشغيل حتى تطبيقات الويب الأكثر تعقيدًا على IE6 إذا اخترت ذلك. (هذا أمر بسيط بالطبع، حيث يتم تحديث محرك/مكون Flash الإضافي بشكل متكرر وبالتالي يعتمد بشكل طفيف فقط على إصدار المكون الإضافي الخاص بالمستخدم).
عادةً ما تكون هذه التطبيقات مصحوبة بمعالجة من جانب الخادم، مثل معالجة Java الخلفية، وتتطلب Flash Builder 4 IDE للتطوير.
إذا كان فريقك يتطور بشكل أساسي باستخدام Java (لأنه يعمل بشكل جيد مع Java)، أو إذا كان تطبيقك يستخدم بنية تعتمد على الأحداث، فيمكنك اختيار Adobe Flash Builder 4.
تتضمن مواقع الويب التي تستخدم Flash كتطبيق ويب Mint.com وFlickr وHyundai.
سيلفرلايت
Silverlight هو في الأساس إصدار Microsoft من Adobe Flex/Adobe Flash. لقد اكتسب بعض الاهتمام، ولكن لا يبدو أنه وصل إلى مستوى الشعبية التي يتمتع بها Adobe Flash.
من الواضح أن تطبيقات Silverlight مرتبطة بالواجهة الخلفية لـ .NET لأنها أحد منتجات Microsoft. هذا يعني أنه عليك التفكير في التكامل بين Silverlight/.NET وAdobe Flex/[بعض البرامج النصية من جانب الخادم مثل PHP].
إذا كان تطبيق الويب الخاص بك يتطلب رسومات معقدة، أو إذا كان فريقك هو في الأساس مطورو .NET، أو إذا كان تطبيقك يستخدم بنية تعتمد على الأحداث، فيمكنك اختيار Silverlight.
مواقع الويب التي تستخدم Silverlight، مثل Netflix.
HTML5
HTML5 هو أحدث تطور في حركة RIA. يعد HTML5 في الأساس أفضل دمج بين HTML4 وJavaScript وCSS ومكتبات أكواد Javascript وFalsh، مما يؤدي إلى الاستفادة من نموذج واجهة برمجة التطبيقات (API) في مواصفات واحدة. HTML5 عبارة عن تقنية مفتوحة، مما يعني أنه لن تكون هناك هيئة إدارية واحدة مثل Flash لـ Adobe أو Silverlight لـ Microsoft.
نظرًا لأن مواصفات HTML5 لم تكتمل بعد ولم يتم إصدار IE9 بعد، فلا تزال بحاجة إلى الانتظار لفترة أطول قليلاً لإنشاء تطبيقات ويب على مستوى الإنتاج.
في الوقت الحالي، تدعم كافة المتصفحات الرئيسية باستثناء IE8 HTML5. نظرًا لأن IE8 يحتل جزءًا كبيرًا من سوق المتصفحات، فمن الصعب حقًا أن يصبح HTML5 سائدًا قبل إصدار IE9.
بمجرد دعم HTML5 على نطاق واسع، إذا كنت لا ترغب في شراء وتعلم IDE (مطلوب لأطر عمل مثل Flex وSilverlight)، أو إذا كان تطبيقك يستخدم بنية تعتمد على الأحداث، أو إذا كنت تفضل استخدام ميزات HTML المضمنة وJavaScript ميزات واجهة برمجة التطبيقات (API) بدلاً من استخدام مكتبة JavaScript تابعة لجهة خارجية، فإن استخدام HTML يعد خيارًا جيدًا.
على الرغم من أنه يتم التعامل مع الرسومات بشكل جيد في HTML5، إلا أن استخدام Flash وSilverlight للتعامل مع الرسومات والرسوم المتحركة المعقدة لا يزال الخيار الأسهل/الأسرع في الوقت الحالي.
هل تطبيقات HTML5 هي مستقبل الإنترنت؟ ليس بالضبط. وطالما استمر مطورو الويب المبدعون والمبتكرون في إنشاء شيء خاص، فستكون هناك دائمًا تقنيات جديدة ناشئة يمكنها القيام بأشياء مذهلة لا تستطيع HTML5 أو أي تقنية ويب أخرى القيام بها.
توجد مكتبات JavaScript وICEfaces وFlash وSilverlight وHTML5 في المقام الأول لإبداعها وابتكارها. ستتكون شبكات المستقبل من العديد من التقنيات المتعايشة، تمامًا كما هي الآن.
المصدر: sixrevisions.com
تم إعداده بواسطة: MazingTech
بفضل MazingTech لمساهمتك