Native

مقارنه بين Native و Hybrid

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

التطبيقات الأصلية

التطبيقات الأصلية هي تلك التطبيقات التي يتم تطويرها بواسطة منصة تطوير معينة خصيصا لنظام تشغيل مستهدف ويتم تحميلها من متجر التطبيقات ك Google Play وApple App Store. تختلف أنظمة التشغيل عن بعضها في لغات البرمجة المدعومة، أدوات التطوير ومكونات الواجهة المرئية (UI) كما توجد إرشادات ومعايير قياسية يجب على المطور مراعتها عند تطوير التطبيق لنظام معين. فمثلا لتطوير تطبيقات للأجهزة التي تعمل بنظام تشغيل Android يجب استخدام لغة Java/Scala بينما يتطلب تطوير التطبيقات لأجهزة IOS استخدام لغة Objective-C/Swift.

تقدم التطبيقات الأصلية أفضل أداء ممكن بما لها من قدرة علي الوصول لكل مكونات ووظائف النظام بسرعة فائقة كما تقدم أفضل تجربة مستخدم (User Experience) ولكن يعيب التطبيقات الأصلية عدم إمكانية تشغيل التطبيق خارج النظام الذي طُور له بالأصل ما يعني ضرورة إعادة برمجة التطبيق من الصفر لكل نظام ترغب باستهدافه الأمر الذي يتطلب جهد اكثر و اموال اكثر و وقت اطول والحاجة لتوظيف عدة فرق تطوير بالبنسبة للشركات

التطبيقات الهجينة

التطبيقات الهجينة هي بالأصل صفحات ويب يتم برمجتها بتقنيات الويب مثل HTML, CSS و Javascrip وتعرُض داخل متصفح النظام (Native Browser) الذي يوفر الوصول لبعض وظائف نظام التشغيل ولهذا السبب يمكن للتطبيقات الهجينة دعم عدة منصات بدون إعادة برمجة التطبيق لكل نظام. تتميز التطبيقات الهجينة بسرعة وسهولة التطوير ويأتي ذلك علي حساب الأداء فاعتماد التطبيق الهجين علي المتصفح يعنى ضعف الأداء بالمقارنة مع التطبيقات الأصلية.

يتطلب تطوير التطبيقات الهجينة معرفة بتقنيات الويب القياسية المدعومة من متصفحات أنظمة التشغيل واستخدام منصة تطوير تطبيقات متعددة المنصات مثل Apache Cordova/PhoneGap، Xamarin، Ionic Framework

الويب

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

تختلف التطبيقات المعتمدة على صفحات الويب عن التطبيقات الأصلية والهجينة بعدم القدرة على الوصول لوظائف النظام وبحاجتها الدائمة للاتصال بالإنترنت في أثناء التصفح على الرغم من وجود وظائف مثل Browser Caching وLocal Storage لحفظ الصفحات في أثناء إنقطاع الاتصال بالإنترنت تظل الحاجة للاتصال موجودة، لا تحتاج تلك التطبيقات إلى تحميل من متجر التطبيقات ما يغنيها عن التقيد بقواعد وقيود المتجر ويوفر حرية أكبر للمحتوي.

                         ما الأفضل؟

الآن بعد أن أصبحت تعرف مختلف الطرق لتطوير التطبيقات والفرق بينهم. يبقى السؤال هو أي طريق هو الأفضل؟ في الحقيقة لا توجد إجابة جاهزة لهذا السؤال ولهذا قمنا بوضع الاسئلة التالية لمساعدتك على الوصول للإجابة الملائمة التي تناسب احتياجاتك

  • هل تؤثر السرعة علي أداء التطبيق كالألعاب مثلا ؟
  • هل يحتاج التطبيق إلي وظائف خاصة بنظام التشغيل كالوصول لسجل المتصلين؟
  • هل طبيعة التطبيق تستدعي الاتصال بالإنترنت أم يمكن تقديم كامل الوظائف بدون الحاجة للاتصال؟
  • ما الميزانية المتوفرة للتطوير والصيانة؟

ونأمل أن يساعدك الجدول التالي في الإختيار

التطبيقات الأصليةالتطبيقات الهجينةالويب
الوصفتطبيقات تم برمجتها بلغة برمجة خصيصا لنظام تشغيل محددصفحات ويب مستضافة بمتصفح أصيلصفحات ويب مهيأة للعرض بأحجام صغيرة تناسب شاشة الجوال
المهارات اللازمة للتطويرمعرفة بلغة برمجة مثل Java – Objective-C – .Netمعرفة بتقنيات الويب HTML, CSS, Javascript –
معرفة بمنصة تطوير للتطبيقات
معرفة بتقنيات الويب HTML, CSS, Javascript
الأداءالأفضلمتوسطمحدود
تجربة المستخدم (UX)الأفضلمتوسطةمحدودة
دعم عدة منصاتغير ممكنممكنممكن
كيفية النشرمتجر التطبيقاتمتجر التطبيقاتخادم ويب (Web Server)
إمكانية الوصول لوظائف نظام التشغيلإمكانية كاملةإمكانية متوسطةلا توجد
سرعة التطوير والصيانةبطيئةمتوسطةسريعة
تكلفة التطوير والصيانةعاليةمتوسطةمنخفطة
الحاجة للاتصال بالإنترنتلالانعم
مناسب لــالتطبيقات التي تحتاج إلي أداء عالي وسرعة ووصول إلي كافة وظائف النظامالتطبيقات التي لا تحتاج أداء عالي وتحتاج للوصول إلي بعض وظائف النظامالتطبيقات التي لا تحتاج أداء عالي ولا الوصول إلي وظائف النظام

Post Author: b7radmin

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

هذا الموقع يستخدم Akismet للحدّ من التعليقات المزعجة والغير مرغوبة. تعرّف على كيفية معالجة بيانات تعليقك.