! T3B > W3C

Posts tagged “Adobe Flex 3

مقدمة حول تقنيات RIA ( تحضير للمقارنة )

Rich Internet Application – RIA – وتترجم تطبيقات الويب الغنية، هو الإسم الذي يطلق على تطبيقات الويب التي تحاكي تطبيقات سطح المكتب في سهولة الوصول، طرق إتصالات متقدمة، كبر وتعقيد النظام، إمكانية العمل بدون إنترنت “كلياً أو جزئياً”، الأمان، السرعة، واجهات المستخدم الغنية. قد يكون الجزء تشابه واجهات هذه التطبيقات مع تطبيقات سطح المكتب هو الأكثر أهمية لدى المستخدم النهائي، لكن مطور تطبيقات الإنترنت يجب أن يلم بالموضوع بشكل أكبر!

عندما بدأت التفكير بعقد مقارنة بين التقنيات المختلفة التي تمكنك من إنشاء RIA apps كنت أفكر في Flex و Silverlight و javaFX. ولكن ما أن بدأت البحث والمقارنة حتى وجدت تقنيات أخرى جديرة بالذكر، وهو ما أجبرني على فصل هذا الموضوع كمقدمة بسيطة وسريعة لكتابة تعريف سريع عن كل تقنية، وفتح باب النقاش لمن لديه الخبرة في أي واحدة منها، لنصل معاً إلى مقارنة منطقية قائمة على أسس واضحة وسليمة.
لنبدأ ؟

Curl: الغريب أنني لم أجد مصادر عربية تتحدث عن هذه المنصة رغم أنها صدرت عام 1998 من قبل Curl, Inc. & Sumisho Computer Systems Corp، المنصة قوية وسهلة في ذات الوقت قريبة من HTML في كتابة البيانات، ومن JavaSc.ript في لغتها البرمجية، تعمل باستخدام Applet خاص عبر المتصفح، كما أنه يمكن إستخدامها لبرمجة تطبيقات لسطح المكتب. يمكنكم تحميل Curl IDE للمطورين، أو تحميل Curl RTE لتجربة الأمثلة الموجودة في الموقع.

JavaFX: أحدث المنصات عهداً ما زالت في نسخها الأولى 1.2، وهي منصة RIA المطورة كجزء من Java من قبل Sun، تستخدم Sc.ripting language خاص يسمى JavaFX Sc.ript، المشكلة الأساسية في هذه المنصة أنها لا تمتلك أداة تحرير رسومية حتى الآن، يمكنك مشاهدة بعضها من هذه الأمثلة، المميز أنه يكفي وجود JRE على جهازك لتستخدم التطبيقات المبنية عبر هذه المنصة، ويمكنك تحميل الأدوات المستخدمة للتطوير لتجربتها، ستجد في الصفحة أداة ReportMill JFXBuilder وهي أداة تحرير رسومية لـJavaFX.

Adobe Flex & Adobe AIR: أما الجزء الأول وهو Flex فهو جزء مفتوح المصدر من منصة Adobe Flash الشهيرة مخصص لتطوير RIA apps، وبالتالي فإن هذه التطبيقات تعمل بمجرد وجود Flash player على المتصفح لديك، ويمكن تطوير تطبيقاتها باستخدام Flex Builder 3 ، أما الجزء الثاني AIR فهو عبارة عن بيئة مساعدة لتشغيل التطبيقات السابقة خارج المتصفح وكأنها تطبيقات سطح مكتب إعتيادية، كالعادة الجميع يحاول إغراءك بالأمثلة فتفضل بمشاهدة بعضها.

MS Silverlight: منصة Microsoft الخاصة لتطوير RIA apps، يستخدام XAML لتمثيل الوجاهات الرسومية، كما يستفيد من الخصائص المختلفة في .NET Framework مثل LINQ ويرها، يمكن تطوير تطبيقاتها باستخدام الأداة الأكثر إنتشاراً بين مطوري الشركة Visual Studio أو من خلال Microsoft Expression Blend 3 ، لتشغيل هذه التطبيقات يتوجب عليك تحميل إضافة خاصة، مرة أخرى الأمثلة

OpenLaszlo:منصة مفتوحة المصدر لتطوير RIA apps، وهي الأخرى تفتقر إلى الإهتمام العربي ( ربما العالمي أيضاً :× )، تمتلك ميزة رائعة وهي أنك تقوم بكتابة الكود المصدري مرة واحدة، ولكنك تستطيع إخراج العمل إما عن طريق الـAjax وإما عن طريق Flash player، أيضاً هذه المنصة تدعم تشغيل تطبيقات الإنترنت الغنية من خارج المتصفح من خلال Laszlo Webtop، يمكنك تحميل إداة التطوير لتجربتها، كما يمكنك المرور على الأمثلة ومشاهدة بعض التطبيقات

المنصات والتقنيات السابقة معظمها يعمل بشكل مشابه للـFlash أي أنها تعتمد على Player أو Runtime Environment خاصة يتم تحميلها من قبل المستخدم، وبالتالي تعمل بشكل متطابق وبسهولة عبر أي OS أو Web browser، في المقابل هناك طريقة أخرى لتطوير RIA apps دون الحاجة لأي من هذه الإضافات، وهي عن طريق الـAjax لكن المشكلة التي سيواجهها المطور هنا أنه بحاجة للتأكد من أن التطبيق الخاص به يعمل بشكل صحيح على المتصفحات المختلفة، بل وعليه أيضاً أن يتحقق من هذا الأمر بعد كل إصدار جديد من المتصفح. الآن يتم تطوير HTML5 لتتناسب مع هذا التطور المستمر تطبيقات الإنترنت، وتحاول W3C من خلالها طرح الطرق الموحدة لدعم العديد من الخصائص الهامة نذكر منها على سبيل المثال canvas tag للرسم ثنائي الأبعاد، وخاصة السحب والإفلات (Drag and Drop)، وحفظ المعلومات للعمل دون إتصال، و SVG كطريقة موحدة لحفظ الرسومات المتجهة، أضف لذلك العديد من المكتبات والمنصات وأطر العمل التي تسهل التعامل مع هذه الاللغات والأدوات مثل Google GWT، jQuery، Prototype، Ext وغيرها الكثير الكثير.

الآن ما رأيكم!؟ أليست تطبيقات الإنترنت الغنية فعلاً غنية ؟ ما نحن بحاجته الآن بعد هذه المقدمة هو أسس علمية وعملية لمقارنة هذه المنصات ( هناك المزيد منها بالمناسبة ) والطرق لتطوير RIA apps، وبحاجة أيضاً لوضع خبراتنا العملية والنظرية العامة حول أي من الأمور السابقة الذكر للمساهمة في المقارنة بمعلومات جديدة، يمكننا الحديث بشكل سريع عن بعض جوانب المقارنة الهامة مثل: دعم المتصفحات وأنظمة التشغيل، سهولة التعلم والتطوير، الأدوات المتوفرة، المصادر المتوفرة للدروس والأمثلة، القوة، الأمان، المتطلبات السابقة ….. سأترك البقية للردود القادمة، ولإقتراحاتكم.

أتمنى أن أكون قد أضفت جديداً، ودمتم بود


الجيل القادم، برمجيات الإنترنت تتجاوز سطح المكتب

web2_icons

بعد أن كثر الحديث عن الـweb 2، وبدأنا نرى العديد من المواقع والخدمات العربية التي تتوافق مع هذا الجيل الجديد من مواقع الإنترنت، قررت الكتابة في موضوع يمكنني تسميته إن جاز لي web 3، ولكن هذه المرة لن يكون جيلاً جديداً من مواقع الإنترنت، بل سيكون جيلاً جديداً من التقنية المتكاملة، التي ستذيب الحدود بين سطح المكتب وبرامجه، والإنترنت وتطبيقاته.

ماذا أقصد بـ Web 3 وكيف ستذوب الحدود بين سطح المكتب والإنترنت ؟

  • إنترنت بدون إنترنت !
  • برامج بدون تحميل أو تنصيب !
  • بياناتك معك في أي مكان في العالم !
  • لن تميز بين برمجيات الإنترنت وبرمجيات سطح المكتب بعد اليوم !

هل تبدو لك هذه الجمل غريبة ؟ دعنا نرى بعض التقنيات !

لن يسعني المقال هنا للحديث عن كل تقنية على حدة، ولكن من الجيد أن نقول أنها تقنيات مقدمة من Microsoft,Yahoo,Google, and Adobe، وهو يعطي إنطباع أولي عن قوة التنافس والإبتكار في هذا المجال.

باختصار فإن كل من Silverlight و Browser Plus يقومان بإثراء GUI ( واجهة الإستخدام ) بشكل يكسر الفواصل بين واجهات الإنترنت وواجهات سطح المكتب، ويعطي قوة وفاعلية أكثر مع هذه الواجهات، الأمثلة المتوفرة في المواقع الخاصة بهذه الخدمات ستوضح لك الفرق بكل تأكيد،أما عن Flex 3 ورغم كونها تعمل في نفس المجال، إلا أنها تتميز بتوفير بيئة عمل متكاملة إضافة لكونها أصبحت مفتوحة المصدر إبتداءاً من الإصدار الثالث.

أما الجزء الأخير وهو Google Gear فهو أمر مختلف تماماً، وهو ما أسميته سابقاً إنترنت دون إنترنت، فهو لا يختص ببناء برمجيات عبر الإنترنت فقط، ولا يختص بجمالية الواجهات، ولكنه يتيح لك إستخدام هذه البرمجات بكفاءة عالية جداً، وكأنها محملة ومنصبة عبر جهازك الخاص، وهي فعلاً ستكون كذلك .

سنأخذ مثالاً جيداً للتوضيح وهو إستخدام Gear مع خدمة Google Docs، والتي تتيح لك إنشاء وحفظ الملفات عبر الإنترنت وتحريرها في برامج شبية ب Word + Excel + Power point إضافة لإمكانية جديدة وهي عمل Form كإستفتاءات عبر الإنترنت يتولى Google Docs تحليلها وعرض نتائجها لك.

بعد أن تقوم بتحميل Gear وتنصيبه على جهازك، عند دخولك إلى Google Docs ستظهر لك رسالة تفيد بأن هذا الموقع يدعم Gear وهل تود إتاحة الصلاحيات له ؟ بالطبع نحن نريد

إذاً عندما نعطيه الصلاحيات ماذا سيحدث ؟
سيتم حفظ الملفات المنشأة في الDocs عبر جهازك الخاص، وسيتم حفظ بعض الملفات أيضاً لزيادة كفاءة وسرعة الخدمة، وستسفيد من :

  1. التفاعل مع البرنامج سيكون أسرع من أي وقت مضى
  2. لن تنتظر تحميل الموقع في كل مرة تود القيام باستخدامه ( شبيه بـ offline mode )
  3. سيتم إضافة إيقونة على سطح المكتب للوصول السريع للبرنامج ( لاحظ البرنامج وليس الموقع، أيقونة وليس رابط ).
  4. ستتمكن من مشاهدة ملفاتك بل والتعديل عليها حتى بعد أن يتم إغلاق حساب الإنترنت، وسيتم عمل تحديث للملفات فور الإتصال بالإنترنت ثانيةً.
  5. ستيتطيع الوصول لهذه الملفات عبر حسابك في Google من أي مكان في العالم.

إذاً نحن نشهد تحول جديد في عالم التقنية، يذيب الفوارق بين برمجيات الإنترنت وسطح المكتب، ويجعلها أكثر سرعة، أكثر كفاءة، بل وأكثر فائدة، لكونها تتيح وصول للبيانات من أي مكان!
لذلك لم أقل: الجيل القادم، برمجيات الإنترنت تنافس سطح المكتب
ولكن قلــــت: الجيل القادم، برمجيات الإنترنت تتجاوز سطح المكتب.

دمتم بود

نشر ونوقش في: سوالف سوفت، شبكة فلسطين للحوار