Mobile development

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

مقدمة عن المجال

برمجة تطبيقات الهواتف الذكية:

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

لغات برمجة تطبيقات الهواتف الذكية:

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

كوتلن Kotlin:

هي لغة برمجة كائنيّة Object Oriented تعمل على منصة جافا كما يُمكن تشغيلها على منصة لغة جافا سكريبت. طوّر اللغة مجموعة من المُبرمجين في شركة جيتبراينز وهي نفس الشركة التي طورت Android Studio وقد تم تصميم كوتلن للتعامل والتوافق الكامل مع الجافا وتتيح كتابة الشيفرة البرمجية بعدد أقل من الأسطر وبشكل أسرع وأكثر فاعلية مقارنةً بلغة جافا،

لغة الجافا JAVA:

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

سويفت swift:

هي لغة برمجةٍ مخصّصةٍ لتطبيقات iOS و macOS و watchOS و tvOS و Linux. وتم تطويرها من قبل شركة أبل Apple في عام 2014 ومع هذا الدّعم من إحدى أكثر شركات التّكنولوجيا تأثيرًا في العالم، تمّ اعتماد Swift لتصبح اللّغة الأساسيّة لتطوير iOS وما بعده. وتعد من أحدث لغات البرمجة الخاصة بنظام الـ iOS والتى تم تصميمها من أجل التغلب على بعض المشكلات والعيوب التى وجدت فى لغات أخرى مثل Objective-C.

المكتبات البرمجية الخاصة ببرمجة تطبيقات الهاتف

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

1- React Native هو عبارة عن إطار عمل لبرمجة تطبيقات طبيعية عن طريق الجافاسكربت وذلك بإعادة استعمال المكونات الطبيعية للمنصة. هذا الإطار يمكن من إنشاء تجربة المستخدم ذات مستوى عالي عن طريق أدوات برمجية تعتمد على javascript ومكتبة React فقط!.

2- NativeScript إطار عمل مفتوحة المصدر لبناء تطبيقات الهواتف المحمولة بإستخدام واجهة المستخدم الأصلية ( Native UI ) للجهاز المستهدف بكود واحد لجميع المنصات. حيث تم بنائه من قبل شركة Telerik المملوكة لشركة Progress ( الغَنيتان عن التعريف ).

3- Lonic وهو إطار عمل لتطوير تطبيقات الهواتف الذكية باستخدام HTML5 و CSS و Javascript. حيث يتيح لك تطوير التطبيقات لجميع الانظمة في نفس الوقت ولكنه يكون لك تطبيقات هجينة Hybrid وليست كما هي التطبيقات الأصلية التي يتم إنشاءها من خلال لغات البرمجة الأساسية كـ Objective-C و Java.

4- Xamarin منصة لتطوير تطبيقات الهواتف الذكية على منصات متعددة باستخدام لغة واحدة هي لغة سي شارب #C. توفر إمكانية تطوير تطبيقات أصلية (Native Apps).

5- Flutter فلاتر هو إطار عمل مقدم من شركة جوجل مخصص لبرمجة تطبيقات الهواتف الذكية العاملة بنظام الاندرويد والـ iOS و فوشيا (نظام تشغيل جديد من جوجل) حيث يركز على تجربة المستخدم و المطور في نفس الوقت و هذا لأنه يوفر إطار عمل شامل بلغة دارت Dart مخصص لرسم الوجهات بجودة عالية و تطبيقات أصلية بأداء ممتاز

المسار

Android Course

عليك بي أخذ دوره عن هذا النظام لفهم كيفيه التعامل معه

Kotlin

هي لغة برمجة كائنيّة Object Oriented تعمل على منصة جافا

IOS Course

عليك بي أخذ دوره عن هذا النظام لفهم كيفيه التعامل معه

Swift

تعتبر لغه برمجه لي انظمه التشغيل IOS و تمكن المطورين بالبرمجة بشكل أسرع وبأقل نسبة أخطاء.

Dart

تعتبر لغة برمجه لتطوير تطبيقات الاندرويد وال IOS وهي مطوره من شركه جوجل

Flutter

يساعد اطار عمل فلاتر المصممين والمبرمجين على تشييد تطبيقات بتصميم عصري وجذاب من خلال حزم ومكتبات مبنية ومكتوبة مسبقاً وجاهزة للاستخدام مما سيسهل عليك عملك كثيراً

Java Script

من الممكن إنشاء تطبيق هاتف جوال بإستخدام هذه اللغة الرائعة وليس فقط في بناء تطبيقات الويب

React Native

هو اطار عمل يستخدم في تطوير تطبيقات الموبيل و تطبيقات الويب

الأدوات الازمه لبدأ العمل

محرر الأكواد : هو البرنامج التي تقوم بكتابه الكود البرمجي عليه وهناك الكثير من محررات الاكواد ولكن ننصح بي التعامل مع Visual Studio Code

Visual Studio Code

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

فديو شرح كيفيه أستخدام المحرر تحميل المحرر

Android Studio

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

فديو شرح كيفيه أستخدام المحرر تحميل المحرر

كتب ومراجع

قنوات تفيدك أثناء التعلم
Abdullah Mansour channel
Abdullah Mansour

تعتبر من أفضل القنوات المختصه والمميزه في مجال تطبيقات الموبيل.. حيث معظم المبرمجين يرجحون لنا هذه القناه لتميزه في المجال

Lazy programmers channel
Lazy programmers

من أفضل القنوات المختصه في تطبيقات الاندرويد حيث بها دوره الجافا والكوتلن والعديد من التطبيقات العملية

Android Developers channel
Android Developers

من افضل القنوات الاجنبية المتخصصه في مجال تطبيقات الموبيل وبها العديد من الدورات من افضل المبرمجين

Android Developers channel
Ahmed Mohamady

من افضل القنوات الاجنبية المتخصصه في مجال تطبيقات الموبيل وبها شرح لكورس الفلاتر والجافا والكوتلن وغيرها من لغات البرمجة واطارات اعمل الخاصه بي مجال تطبيقات الموبيل

نصائح للمبتدائين

1- كتابة كود دون التخطيط:

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

2- كتابة كود دون تعليقات:

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

3- عدم البحث في Google:

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

4- الهروب من الأخطاء:

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

5- إعادة اختراع العجلة:

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