كيف تصبح مطورًا متكاملًا: الجزء 3
نشرت: 2017-12-02هذا المنشور هو الثالث والأخير في السلسلة حول أن تصبح مطورًا مكدسًا. تتحدث هذه المقالة بشكل خاص عن تطوير تطبيقات الأجهزة المحمولة. اقرأ هنا لمزيد من المعلومات حول تطوير الواجهة الأمامية والخلفية.
عندما قدم ستيف جوبز iPhone في عام 2007 ، كان إيذانا بأكبر ثورة شهدها العالم منذ المطبعة. تمكنت الهواتف الذكية من اختراق كل بلد تقريبًا في العالم. حتى أكثر الناس فقراً يبدو أنهم يمتلكون واحدًا لدرجة أن الحياة بدونهم تبدو غير قابلة للتصور.
تحفيز
هناك بعض التطبيقات التي لا معنى لها إلا عند التشغيل على الهاتف. خذ أوبر على سبيل المثال. تحتاج أوبر إلى معرفة موقعك الدقيق من خلال نظام تحديد المواقع العالمي (GPS). لن يكون تطبيق Uber لسطح المكتب منطقيًا.
هناك مشكلة أخرى تتمثل في أن غالبية جمهورك سيفتحون تطبيقك من خلال الهاتف ، حتى لو كان مصممًا للمتصفحات. في مثل هذه الحالات ، من الضروري التأكد من أن التجربة سلسة وعدم استهلاك الكثير من البيانات. أخيرًا ، هناك اختلافات طفيفة بين التفاعل باستخدام النقر بالماوس واللمس. يجب أن يضمن تطبيقك أنه يعمل بشكل جيد في كلا السيناريوهين.
مع وضع كل هذه الاعتبارات في الاعتبار ، من المنطقي الخروج من المتصفح وإنشاء تطبيقات للجوال. يضمن ذلك تحقيق أقصى استفادة من الوظائف التي يجب أن يوفرها الهاتف الذكي النموذجي مع جعل تجربة المستخدم ممتعة في نفس الوقت. فيما يلي خطوات تطوير تطبيقات الجوال. للجزء الأول لتصبح مطور مكدس كامل في تطوير الواجهة الأمامية والخلفية.
جدول المحتويات
الخطوة 12: اختر منصة
ستكون الخطوة الأولى هي اختيار النظام الأساسي الذي ترغب في بناء تطبيقك فيه. ما لم تكن جزءًا من فريق كبير بشكل معقول ، فمن غير المرجح أن تقوم بإنشاء تطبيقات من نقطة الصفر على جميع المنصات الرئيسية. السيناريو الأكثر احتمالا هو أنك ستقوم بالترميز على النظام الأساسي المفضل لديك وبعد ذلك ستقوم ببساطة بنقله إلى الآخرين.
منصات الهواتف الذكية الرئيسية اليوم هي iOS و Android و Windows. يستخدمون لغات و IDE مختلفة بشكل كبير. على سبيل المثال ، يستخدم iOS Swift و XCode ، يستخدم Android Java و Android Studio و Microsoft تعمل مع C # و Visual Studio.
يهيمن Android و iOS على السوق اليوم ، لذا فإن الاختيار يرجع حقًا إلى هذين الاثنين. بعض الأشياء التي قد تحتاج إلى مراعاتها قبل الاختيار هي مشاركة الجمهور لتطبيقك. أعتقد أنه من المنطقي من الناحية التجارية إنشاء تطبيقات iOS إذا كنت في بلد من دول العالم الأول لأن أجهزة Apple تحظى بشعبية كبيرة هناك. في المقابل ، في بلد مثل الهند ، سيكون Android خيارًا أكثر وضوحًا لأن الحصة السوقية لأجهزة iPhone صغيرة للغاية نظرًا لسعره الباهظ.
إذا كنت تخطط لجني الأموال من تطبيقك ، فضع في اعتبارك أنه من المرجح أن يفتح مستخدمو iOS محافظهم لعمليات الشراء داخل التطبيق أكثر من نظرائهم في Android. قد يكون هذا بسبب أن مستخدمي iOS يميلون عادةً إلى الحصول على دخل متاح أكثر مقارنة بأسواق العالم الثالث حيث يهيمن Android.
يتطلب تطوير iOS أن يكون لديك جهاز تطوير Mac. أيضًا ، يتم بيع تراخيص متجر تطبيقات Apple بسعر 99 دولارًا سنويًا مقارنة برسوم Google Play التي تبلغ 25 دولارًا لمرة واحدة. بعبارة أخرى ، يعد تطوير iOS أكثر تكلفة بكثير.
في هذا المنشور ، سأغطي كيفية تطوير تطبيقات الأجهزة المحمولة اليوم: تطبيقات Android الأصلية وتطبيقات iOS الأصلية وتطبيقات الهاتف الهجين.
الخطوة 13: Java و XML
Java هي اللغة الأكثر شيوعًا لتطوير Android (قدمت Google مؤخرًا دعمًا للغة Kotlin Programming أيضًا).
اعتقد مؤسسو Android أن Java هي الاختيار المناسب وقد تمسّكوا بها منذ إنشائها. وإذا كان مسارهم هو أي شيء يجب أن يسير عليه ، فهو قرار مذهل.

أفضل مورد لتعلم Java هو Head First Java. ستمنحك قراءة هذا الكتاب مقدمة شاملة للغة بالإضافة إلى مبادئ البرمجة الشيئية.
بقدر ما يتعلق الأمر بـ XML ، لا أعتقد أنك بحاجة إلى برنامج تعليمي مركّز حول هذا الموضوع. لقد عملت بالفعل على نطاق واسع مع مجموعة فرعية من XML (HTML) وستكون قادرًا على اكتشافها بسرعة كبيرة ، حتى لو كنت ستنتقل مباشرة إلى تطوير Android. لا أستطيع أن أقول نفس الشيء لجافا. تأكد من حصولك على فهم جيد للغة قبل الدخول في نظام Android.


الخطوة 14: Android
لديك الآن الدراية الفنية لإنشاء تطبيقات Android. حان الوقت للتعمق في نظام التشغيل الثوري هذا. كن حذرًا على الرغم من أن بعض ممارسات Android تختلف عما تراه عادةً على الويب. ستضمن الموارد التي اقترحتها أدناه عدم إعاقة تعلمك بسبب هذه الاختلافات.
Android Programming- The Big Nerd Ranch Guide 2nd Edition هو مكان جيد للبدء إذا كنت تعرف Java بالفعل. تأكد من اختيار الإصدار الثاني لأن هذا هو الإصدار الذي يستخدم Android Studio ، وهو معيار الصناعة الآن. إن ممارسة إنشاء التطبيقات في Eclipse عفا عليها الزمن إلى حد كبير.
مقابلة مع فاروق آدم ، الشريك المؤسس ، Fynd
الخطوة 15: iOS
إذا كنت من عشاق Apple و / أو قررت أن تطبيقات iOS أكثر منطقية لتطلعات عملك / حياتك المهنية. ستكون الخطوة الأولى هي الحصول على جهاز Mac. يعمل XCode على نظام Mac فقط وللنشر في متجر التطبيقات ، فأنت بحاجة إلى جهاز Mac. آسف ، برنامج VMWare.
المورد الذي سأقترحه لنظام iOS هو نفسه تمامًا لنظام Android. لدى Nerd Ranch منشوراتها الخاصة - برمجة iOS: The Big Nerd Ranch Guide الذي يتعامل مع Swift و XCode ، لذلك يعد هذا مكانًا جيدًا للبدء.
الخطوة 16: تطبيقات الجوال المختلطة
إذا كنت مطورًا منفردًا أو تعمل في فريق صغير ، فربما لا يكون لديك الوقت أو الموارد اللازمة لإنشاء تطبيقات Android و iOS وصيانتها بشكل منفصل. للتخفيف من معاناة المطور لبناء منصات متعددة ، تم تقديم مفهوم Hybrid Mobile Apps.
المفهوم بسيط للغاية وثوري. إذا كنت تعرف Javascript ، فأنت تعرف بالفعل كيفية إنشاء تطبيقات الويب. لذلك ، إذا كان لديك تطبيق في JS ، فيجب أن يكون هناك إطار عمل يقوم تلقائيًا بنقل تطبيقك إلى Android و iOS و Windows. لا يصدق لكنه حقيقي.
تحقق معظم الأطر الهجينة ذلك باستخدام Cordova أو React Native. يمكنك التفكير في كوردوفا على أنها جسر بين المتصفحات والأجهزة الأصلية للهاتف الذكي. يقوم بإنشاء اتصال بين الاثنين باستخدام JS فقط ويساعد في إنشاء نصوص بناء باللغات الأصلية لكل نظام أساسي.
ومع ذلك ، فإن الأطر القائمة على كوردوفا تطغى بسرعة على قوة Facebook ، React Native. تكمن قوة React Native في حقيقة أنه أثناء قيام Cordova ببناء WebViews ، يتيح لك React Native إنشاء تطبيقات أصلية يمكنك إنشاؤها باستخدام إما Java (لنظام Android) أو Swift (لنظام iOS). بمعنى آخر ، كوردوفا هو موقع ويب متنكر في هيئة تطبيق جوال ، لكن React Native يتيح لك بناء الشيء الحقيقي .
في رأيي ، يمكنك أن تفوت كوردوفا وتعلم React Native بدلاً من ذلك. إنه استثمار مهني عظيم للغاية. يعد برنامج تطوير البرامج UpGrad & IIIT-B مكانًا رائعًا لبدء رحلتك مع هذه المكتبة الثورية التي استخدمتها بالفعل شركات مثل Facebook و Netflix و AirBnB لتصميم تطبيقاتها.
مقابلة مع فاروق آدم ، الشريك المؤسس ، Fynd
خاتمة
مع اختتام التطبيقات الهجينة ، وصلنا إلى نهاية هذه السلسلة. باختصار ، هذه هي الأشياء التي غطيناها:

- أساسيات علوم الكمبيوتر.
- هياكل البيانات والخوارزميات
- UI / UX
- HTML و CSS و JS
- الأطر الأمامية
- البرمجة النصية من جانب الخادم وقواعد البيانات
- أطر المكدس الكاملة
- Android و iOS
- تطبيقات الجوال الهجينة
أتمنى أن تكون قد استمتعت بقراءة هذه السلسلة بقدر ما استمتعت بكتابتها والأهم من ذلك ، وجدت على الأقل بعض الأجزاء مفيدة. كالعادة ، تعليقاتك واقتراحاتك مرحب بها!


