دليل أراجيك الشامل لتعلم تطوير تطبيقات الجوال 2019

1

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

كم شخص منكم خطر في باله السؤال التالي، ما الذي يجعل تطبيق الواتساب قادر على العمل بكفاءة عالية في الأجهزة القديمة والحديثة على حد سواء مقارنة ببرنامج المسنجر الذي قد يُبطئ عمل الجهاز القديم ولكنه مذهل على الأجهزة المتوسطة والرائدة؟

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

خطوات طريق تطوير تطبيقات الجوال

دعونا نتعرف على الطريق الذي سوف نسلكه قبل بداية رحلتنا لاحتراف تطوير تطبيقات الجوال:

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

اقرأ المزيد: واتس اب ويب : أفضل ميزات وحيل لاستخدام Whatsapp Web ستفيدك جدًا وتختصر وقتك

أنواع التطبيقات

يوجد 3 أنواع من التطبيقات بحسب التقنيات المستخدمة في بنائها وسنوضح الأنواع الثلاثة بالتفصيل:

تطوير تطبيقات الجوال - أنواع التطبيقات

تطلبقات الويب Web Apps

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

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

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

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

هي تطبيقات مختلطة بين تطبيقات الويب والتطبيقات الأصلية، تستخدم Javascript وCSS وHTML في بنائها، وهي تظهر ضمن Container أو Webview فيسهل عرضها وتعديلها وصيانتها، وهي تطبيقات يتم بنائها باستخدام منصة معينة.

اقرأ المزيد: هل تبحث عن برنامج ترجمه .. جميعُ اللغات أصبحت بين يديك مع هذه المجموعة من برامج الترجمة

كيفية الاختيار بين أنواع التطبيقات

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

تطبيقات الويب

الإيجابيات:

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

تطوير تطبيقات الجوال - الاختيار بين أنواع التطبيقات

السلبيات:

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

اقرأ المزيد: دليل أراجيك الشامل لتعلم تطوير الويب 2019

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

الإيجابيات:

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

إيجابيات وسلبيات التطبيقات

السلبيات:

  • التطبيق موجه لمنصة واحدة فقط وإن أراد المبرمج أن ينشر التطبيق لمستخدمي أندرويد وأيفون فعليه بناء نسختين من التطبيق لكل منصة.
  • اللغات المستخدمة أصعب نسبيًا من الأنواع الأخرى حيث أن تعلم الجافا أو السويفت أصعب بكثير من تعلم الجافا سكريبت والـ HTML والـ CSS.
  • مكلفة أكثر عند توظيف مبرمج محترف حيث تحتاج إلى اثنين من المبرمجين على الأقل لبناء تطبيق واحد موجه لمنصتين.
  • صعوبة الصيانة والتعديل حيث يحتاج المبرمج إلى رفع نسخة معدلة إلى المتجر ثم على المستخدم تحميل هذه النسخة وتثبيتها.

اقرأ المزيد: كلّ ما تودون معرفته عن مواصفات هواوي Y9 2019 الجديد

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

الإيجابيات:

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

تطوير تطبيقات الجوال - التطبيفات الهجينة

السلبيات:

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

اقرأ المزيد: أهم المصادر والأدوات لتعلّم برمجة تطبيقات أندرويد

أهم أدوات تطوير تطبيقات الجوال

يحتاج المبرمج لاستخدام بعض الأدوات عند البدء بالعمل على تطوير تطبيقات الجوال ويعتمد اختيار الأدوات على نوع التطبيق المراد بناؤه:

تطوير تطبيقات الجوال - أهم الأدوات

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

  • Android Studio: وهو بيئة العمل الخاصة بتطبيقات الاندرويد والتي تحتاج تحميل (Software Development Kit (SDK الخاصة بهذا النوع من التطبيقات. 
  • XCode: هي البيئة المخصصة لبناء تطبيقات الـ iOS، وأيضًا تحتاج وجود الـ SDK الخاصة بتطبيقات iOS.

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

تحتاج التطبيقات الهجينة إلى بعض الإضافات المختلفة عن التطبيقات الأصلية وهي لا تعمل ضمن بيئة برمجية خاصة بها بل تحتاج إلى ما يلي:

  • محرر نصوص: مثل Atom أو VS Code لكتابة الملفات البرمجية وسهولة التعامل مع المشروع.
  • تحميل الملفات الخاصة بالإطار المستخدم مثل تحميل React Native ليتمكن المطوّر من بدء التطوير.
  • تحميل الـ SDK الخاصة بالمنصة التي يود المبرمج التوجه لها.

تطبيقات الويب

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

  • محرر النصوص لكتابة الكودات البرمجية.
  • متصفح لعرض النتائج.

اقرأ المزيد: تعرّف على كيفية إستعادة رسائل WhatsApp المحذوفة حتى بدون نسخة إحتياطية

لغات البرمجة المستخدمة في تطوير تطبيقات الجوال

  • Java: وهي اللغة المستخدمة لبناء تطبيقات أندرويد أصلية Native Apps.
  • Swift/Objective C: يمكن استخدام أي منهما لبناء تطبيقات أصلية موجهة للـ iOS.
  • JavaScript: تستخدم في التطبيقات الهجينة وتطبيقات الويب على حد سواء ولكن باختلاف طريقة الاستخدام وشكل الكود البرمجي.

أشهر منصات تطوير التطبيقات الهجينة

يوجد الكثير من المنصات التي يمكن استخدامها من أجل تطوير تطبيقات الجوال الهجينة، وأشهرها:

منصات تطوير التطبيقات الهجينة

  • React Native: وهو المنصة التي أطلقتها فيسبوك بهدف تطوير تطبيقات الحوال، وهي تستخدم لغة JavaScript في برمجة التطبيقات، كما أنها الأكثر شهرة وقوة بين مختلف المنصات.
  • Xamarin: المنصة التابعة لشركة مايكروسوفت، وهي منصة تستخدم الكود المشترك المعتمد على منصة .Net ولغة البرمجة#C، ويمكن عن طريقها تطوير تطبيقات موجهة للأندرويد والـ iOS ونظام ويندوز فون.
  • PhoneGap: أحد أشهر منصات التطبيقات الهجينة والتي تعتمد كل من Javascript وCSS وHTML في بناء التطبيقات والتي يمكنها العمل على مختلف أجهزة الموبايل.
  • Ionic: منصة كاملة مفتوحة المصدر لتطبيقات الهواتف الهجينة، تعمل باستخدام تقنيات الويب، وتتميز بأنها مجانية ومرخصة من قبل MIT إلى جانب كونها تدعم أكثر من 120 من تقنيات التعامل مع الجزء الفيزيائي من الهاتف المحمول كالبلوتوث ولمسات الأصابع وغيرها.
  • Mobile Angular UI: إطار عمل مناسب لمحبي Bootstrap وAngular، وكل ما يحتاجه المطور هو بعض أوامر AngularJS لتقديم واحدة من أفضل تجارب المستخدم.
  •  Sencha: منصة هامة من أجل تطوير تطبيقات الجوال الهجينة لتعمل على كافة المنصات، وهي من الخيارات المناسبة للشركات أكثر من الأفراد، وهي تساعد في إضفاء طابع أصلي على التطبيق في جميع المنصات التي تدعمها.

اقرأ المزيد: جوجل تكشف عن الإصدار الأول من Flutter التي ستغير مستقبل برمجة التطبيقات

حاولنا في هذا الدليل تغطية أهم الخطوات في طريق تطوير تطبيقات الجوال وفي حال أغفلنا أي نقطة أخبرونا عنها في التعليقات.

1