Powered by ZigaForm version 3.8

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

المنصات الموحدة لتطوير التطبيقات

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

منصة Apache Cordova

تعرف رسميا باسم PhoneGap.  وهي منصة مفتوحة المصدر ساهم في إنشائها العديد من الشركات: Google، BlackBerry، IBM، Intel و Microsoft.

تعتمد أغلب المنصات الموحدة لتطوير التطبيقات على منصة Cordova لتحويل الأكواد البرمجية الخاصة بها إلى native executable. تقوم Cordova أولا بتجميع أكواد HTML، CSS و JavaScript في شكل client-side package. ثم بعد ذلك، يقوم البرنامج بتحويل الأكواد المخصصة داخل native WebView. تعرف هذه العملية باسم hybrid application technique. بفضل تغليف أكواد الويب بحزمة Cordova الأصلية، تتمكن Cordova من إتاحة النفاذ إلى native APIs. فمن خلال دمج community-built plugin، يمكن للتطبيقات الإتصال بأي من هذه APIs باستخدام JavaScript.

منصة Adobe PhoneGap

هو منتج مستقل عن منصة Apache Cordova  وإن كانت هي الأساس الذي بنيت عليه منصة Cordova. ولكنها الآن تعتبر منصة مستقلة مدعومة من طرف  Cordova. من أهم المزايا التي تقدمها PhoneGap نذكر GUI build system الذي يلخص أسطر الأوامر البرمجية command line الخاصة بApache Cordova.

يسهل Adobe PhoneGap عملية التطوير على المطورين ويسرعها وذلك بفضل واجهات تطوير تطبيقات Cordova التي يوفرها. يقدم PhoneGap أيضا خادم server يمكن المطورين من استضافة تطبيقاتهم على حواسيبهم الخاصة واختبارها على شبكة الإنترنت. يسرع هذا الخادم مراحل build→run→revise وبذلك يستطيع المطورون قضاء وقت أكثر في البرمجة بدلا من تضييع الكثير من الوقت في عمليات running، compiling، deploying….

منصة Ionic Framework

يجمع Ionic بين Angular  والمكتبات البرمجية الخاصة به ليقدم تجربة تطوير موحدة لتطبيقات الهواتف الذكية. تعد تجربة التطوير هذه مألوفة جدا لمطوري الويب.  لقد أصبحت Ionic من أفضل المنصات الموحدة لتطوير التطبيقات وهي مفضلة لدى المطورين أكثر من PhoneGap. وذلك رغم أن Ionic تعتمد على PhoneGap في عملية تطويرها لتطبيقات الموبيل. كما أنها ترث كل الإضافات plugins المقدمة من Apache Cordova.

منصة Framework 7

منصة Framework 7 هي منصة موحدة لتطوير التطبيقات  مدعومة من Apache Cordova. وتوفر هذه المنصة حزمة برمجية مطورة بواسطة  Vue.js ومجموعة جاهزة من مكونات واجهات التطبيقات والتي تحاكي الواجهات الأصلية native interfaces. تقلد هذه الأداة أساسيات التصميم والواجهات الخاصة بنظام iOS ونماذج التصميم المتبعة من طرف جوجل Google’s Material Design patterns حتى تبدو واجهات التطبيقات وكأنها قد صممت وفق نظامها الأصلي.

يسمح Framework 7 للمصممين أيضا بتخصيص customize الواجهات بالطريقة التي يفضلونها. كما يقدم مجموعة من القوالب الجاهزة التي تساعد المصممين على اختصار الوقت.

يضيف Framework 7 خاصيتين أساسيتين إلى خصائص Cordova الأصلية. هذه الخاصيات تساهم في تسريع عملية التطوير بشكل كبير مقارنة بالعمل على منصة Apache Cordova.

منصة Apache Weex

 

هي منصة أخرى من المنصات الموحدة لتطوير التطبيقات والمدعومة من طرف Apache. جمع مطورو منصة Weex بين الفكرة الأساسية التي تقوم عليها Cordova وبين مترجم أكواد خاص بهم : runtime JavaScript interpreter. إذ تنتج هذه الأداة تطبيقات موافقة لنظم تشغيل مختلفة ولكنها مبرمجة بكود واحد. ثم تترجم أكواد HTML التي تنتجها وتقوم بعرضها بشكل ديناميكي باستخدام native view elements.

يساهم الكثير من المبرمجين المهتمين بمنصة Weex في تطويرها من خلال زيادة الإضافات والتصاميم الجديدة. وهذا ما يساهم في تطورها بشكل سريع حيث لن يستطيع المستخدمون في المستقبل القريب التفريق بين تطبيقات Weex والتطبيقات الأصلية.

منصة React Native

صممت منصة React Native بالإعتماد على أساسيات منصة React. لذلك، إذا كنت متعودا على تصميم تطبيقات الويب باستخدام React، فإنك لن تجد صعوبة كبيرة في تطوير تطبيقات الهواتف الذكية باستخدام React Native. وتقوم منصة React Native، مثل نظيرتها Weex بترجمة الكود الذي تنتجه إلى أكواد وواجهات أصلية.

تعد React Native من أكثر منصات JavaScript-to-native شهرة. تستمد هذه الأداة شهرتها من الشركة التي أسستها: Facebook. إذ صمم كل من تطبيق Facebook و Instagram باستخدام منصة React Native.

إذا كان اثنان من أكثر التطبيقات استخدامًا في العالم يمكنهما الوثوق بهذه المنصة ، فبإمكانك ذلك أيضا.

منصة NativeScript

تعتبر هذه المنصة المنافس المباشر لمنصة React Native. وهي مدعومة من طرف منظمة كبيرة : Progress. تقدم منصة NativeScript تجربة تطوير عابرة لنضم التشغيل. وتمتلك مقاربة شبيهة لتلك التي تعتمدها Ionic.

مثلما هو الحال مع React Native، تقوم NativeScript بتحويل أكواد تطبيقات  JavaScript إلى تطبيقات هواتف ذكية أصلية.

تعتمد NativeScript في الأساس على Angular 2 . لكن، يمكن للمطورين أن يستخدموا  JavaScript إضافة الى NativeScript APIs.

كما تمنح NativeScript المطورين فرصة الإطلاع على المنتج النهائي من خلال واجهات تجريبية لكل من Android و iOS.

تقوم هذه المنصة بإنتاج تطبيقين (Android و iOS) باستخدام كود واحد وبكفاءة عالية.

منصة Flutter

أنشأت منصة Flutter من طرف Google. وتمثل البصمة الخاصة بجوجل في عالم المنصات الموحدة لتطوير التطبيقات (Android و iOS). تستخدم منصة Flutter لغة البرمجة: Dart بدلا من JavaScript. وقد اختارت جوجل لغة Dart وفضلتها على JavaScript ، المعتمدة من قبل أغلب المنصات التي ذكرناها، لأن لغة Dart قد طورت خصيصا من طرف جوجل لتحل محل JavaScript.

لا تعزز Flutter لغة البرمجة الخاصة بـجوجل فحسب ، بل هي أيضا مرتبطة ارتباطًا وثيقًا بمنتج آخر من منتجات جوجل:  Material Design.

تعد Flutter المنصة الوحيدة الخاصة بتطوير التطبيقات متعددة أنظمة التشغيل والمدعومة من طرف شركة تمتلك نظام تشغيل هواتف ذكية. إذ أن Apple لا تمتلك منصة كهذه. أما منصة Xamarin من Microsoft ليست بمثل مرونة وكفاءة Flutter.

في الحقيقة، لقد تم برمجة العديد من تطبيقات جوجل باستخدام منصة Flutter وهو ما يعكس ثقة العملاقة جوجل في هذه المنصة. فلغة البرمجة Dart تتمتع بسرعة تشغيل عالية. كما أن برمجة التطبيقات بمنصة مدعومة من جوجل سيجعل من هذه التطبيقات مألوفة ومحببة إلى مستعملي Gmail، Google Maps وغيرها من التطبيقات التي تعتمد Material Design.

مقارنة بين المنصات الموحدة لتطوير تطبيقات الهواتف الذكية
المنصة النوع مفتوحة المصدر؟ أنظمة التشغيل WORA? لغة البرمجة
Apache Cordova hybrid نعم Andoid,iOS,Windows Phone 8, Blackberry, Ubuntu,Firefox OS, LG WebOS,Amazon FireOS نعم JavaScript
Adobe
PhoneGap
hybrid نعم Andoid,iOS,Windows Phone 8 نعم JavaScript
Ionic Framework hybrid نعم Andoid,iOS,Windows Phone 8, Chrome,

Desktop

نعم JavaScript,

TypeScript

Framework 7 hybrid نعم Andoid, iOS نعم JavaScript
Apache Weex Native نعم Andoid, iOS, Web نعم JavaScript
React Native Native نعم Andoid, iOS لا JavaScript
NativeScript Native نعم Andoid, iOS نعم JavaScript,

TypeScript

Flutter Native نعم Andoid, iOS نعم Dart

 

أكتب تعليق