دروس Android: كيفية تطوير تطبيق Android

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

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

إليك ما سنغطي اليوم:

  • ما هو Android
  • أدوات تطوير Android
  • كيفية تطوير تطبيق Android
  • موارد لتطوير تطبيقات Android

ما هو Android؟

يعد Android أحد أنظمة التشغيل الأكثر شعبية في العالم لكل شيء بدءًا من أجهزة الجوال 5G إلى تطبيقات الجوال إلى الهواتف الذكية والأجهزة اللوحية التي تعمل باللمس. تستخدم Google هذا البرنامج المفتوح المصدر الذي يعمل بنظام Linux لتشغيل أكثر من 2.5 مليار جهاز حول العالم ، وهو ما يمثل أكثر من 80٪ من مبيعات الهواتف الذكية.

يعتمد Android على Linux kernel ، مما يعني أن بنية التشغيل الأساسية محمولة ومتعددة المستخدمين وقادرة على التعامل مع المهام المتعددة المعقدة. واحدة من أكبر مزايا Android هي حرية الاختيار التي تأتي مع التكنولوجيا. الأجهزة ليست أكثر تنوعًا فحسب ، بل إن البرنامج مرن للغاية وقابل للتخصيص.

ينمو سوق تطوير Android مع تزايد عدد الشركات المصنعة ، بما في ذلك Samsung و Lenovo و HTC و LG ، والتي تلجأ إلى Android لتشغيل منتجاتها. هذا يعني أن هناك طلبًا كبيرًا على مطوري Android حول العالم في مختلف الصناعات والشركات! علاوة على ذلك ، فإن سياسات متجر Google Play الجديدة هي سوق تطوير التطبيقات أكثر ربحًا. إن تعلم مهارات Android سيفتح لك الأبواب ويجعلك مطورًا مرغوبًا فيه.

أدوات تطوير Android

إن البدء كمطور Android أسهل مما تعتقد. ستحتاج إلى إتقان بعض المهارات والأدوات الأساسية ، مثل:

  • مهارات لغة البرمجة (Java و Kotlin و Groovy)
  • XML
  • نظام بناء أندرويد
  • Android Studio IDE

مهارات البرمجة اللغوية

هناك ثلاث لغات برمجة ولغة ترميز واحدة تستخدم في تطوير Android.

Java هي اللغة الرسمية لتطوير Android وواحدة من أكثر لغات البرمجة شعبية في العالم. تعمل دروس جافا على Android Runtime (ART) ، وهو جهاز افتراضي متخصص. ألق نظرة على هذا المثال من ملف Android MainActivity.java.

كانت Kotlin هي اللغة الرسمية الثانية لتطوير Android منذ عام 2017. معروف بكونه أكثر إيجازًا وتعبيرًا ، يساعد Kotlin في تخفيف بعض عيوب Java. فيما يلي مثال للرمز أعلاه في Kotlin حتى تتمكن من المقارنة.

إذا كنت تريد معرفة المزيد عن Kotlin ، فألق نظرة على مقالنا هنا لمتابعة الأساسيات.

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

نظام بناء أندرويد

يشغل Gradle نظام Android الخاص ببناء نظام التشغيل الآلي ويتوسع وفقًا لمفاهيم Apache Maven و Apache Ant من خلال تقديم لغة تستند إلى Groovy ومحددة المجال. Groovy هي لغة ديناميكية مطبوعة بشكل اختياري مع إمكانات الكتابة الثابتة. يساعد على تحسين الإنتاجية والسرعة من خلال الدمج مع برنامج Java. مع سهولة Groovy والنظام البيئي الناضج لـ Gradle ، يمكنك أتمتة برنامجك وتقديم تراكيب أسرع بكثير.

Android Studio IDE

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

  • المحللون والمحللون في الوقت الحقيقي
  • نظام بناء مرن
  • محرر كود ذكي
  • محرر تخطيط مرئي
  • محاكي سريع

أندرويد سك

Android SDK هي مجموعة التطوير الرسمية لتطوير تطبيقات Android. وتتكون من حزم معيارية يمكن تنزيلها بشكل منفصل من مدير Android SDK ، بما في ذلك أداة SDK و Google API ودعم Android و Android Debug Bridge (ADB) والمزيد. تمامًا مثل IDE ، يتم تحديث Android SDK دائمًا. ستبقيك الإصدارات الجديدة على اطلاع بأحدث الميزات.

كيفية تطوير تطبيق Android

Java لنظام Android

عندما يتعلق الأمر بإنشاء تطبيقات Android ، فإن معرفتك بـ Java أمر أساسي لنجاحك. Java هي اللغة الرسمية لتطوير تطبيقات Android ، وهي تدعم جميع أدوات Android. ستجعل معرفة هذه اللغة تجربة مطوريك أسهل بكثير.

تم اختيار Java لتطوير Android لأنها معروفة جيدًا ومدعومة جيدًا بأدوات التطوير ، وهي منتشرة بالفعل في صناعة الهواتف المحمولة. علاوة على ذلك ، تعمل Java في VM ، لذلك لا تحتاج إلى إعادة تجميعها.

قبل أن تتمكن من بدء رحلة مطور برامج Android ، تحتاج إلى الوصول إلى السرعة في Java. إذا كنت تتطلع لبدء استخدام Java ، فراجع الدورات التعليمية المجانية في Educative.

قم بتثبيت Android Studio IDE

لبدء تطوير Android ، تحتاج إلى تثبيت Android Studio IDE. هذه الواجهة سهلة الاستخدام والسحب والإفلات هي بيئة تطوير IDE الرسمية. تم تصميمه خصيصًا لتطبيقات Android عالية الجودة. سيسرع IDE هذا من وقت التطوير ويجعل تطبيقاتك أكثر موثوقية وأسهل في التحديث عند إصدار الميزات الجديدة.

لتثبيت Android Studio على Windows ، اتبع هذه الخطوات.

  1. قم بزيارة هذا الرابط للحصول على أحدث إصدار من Android Studio.
  2. يمكنك تنزيل IDE كملف .exe أو ملف .zip. بالنسبة لملف exe. ، انقر نقرًا مزدوجًا فوق الملف لتشغيله. بالنسبة لملف .zip ، قم بفك ضغط ملف ZIP ونسخ مجلد android-studio إلى ملفات البرنامج.
  3. سيطالبك هذا بفتح وتشغيل مجلد android-studio> binfolder.
  4. بمجرد المطالبة ، اتبع معالج إعداد Android Studio ، حيث يمكنك تحديد حزم SDK الخاصة بك.

لتثبيت Android Studio على Mac ، اتبع هذه الخطوات.

  1. قم بزيارة هذا الرابط للحصول على أحدث إصدار من Android Studio.
  2. بمجرد التنزيل ، قم بتشغيل ملف DMG واسحبه إلى مجلد التطبيقات.
  3. قم بتشغيل Android Studio. من هنا ، يمكنك إما بدء مشروع جديد أو استيراد الإعدادات السابقة.
  4. اتبع تعليمات معالج الإعداد لتحديد مكونات SDK.
إذا لم تكن مستعدًا لتنزيل Android Studio IDE ، يمكنك أيضًا الاطلاع على دورة Educative باستخدام أداة Andoird المصممة مسبقًا الفريدة

إنشاء تطبيق Hello World

الخطوة 1: هيكل تطبيق Android

الآن بعد أن أصبح لدينا IDE الخاص بنا ، كيف يمكننا بالفعل إنشاء مشروع Android؟ أولاً ، دعنا نلقي نظرة على هيكل مشروع Android النموذجي.

مجلد التطبيق وحدة الجذر

  • build.gradle - ملف تكوين الوحدة النمطية
  • src / main / AndroidManifest.xml - ملف بيان الوحدة النمطية
  • src / main / java - مجلد مصدر الوحدة النمطية لملفات Java أو Kotlin
  • src / main / res - مجلد موارد الوحدة

build.gradle - ملف تكوين المشروع

gradle، gradle.properties، gradlew، gradlew.bat - ملفات Gradle ذات الصلة لبناء مشروع Android

settings.gradle - ملف إعدادات المشروع

ملفات المشروع

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

ترتبط ملفات gradle و gradlew و gradlew.bat ببرنامج Gradle المجمع ، لذلك لا يتعين علينا تثبيت Gradle يدويًا.

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

ملفات الوحدة

لكل وحدة اسم فريد حيث نضع رمز مصدر التطبيق. يحتوي ملف الوحدة النمطية build.gradle على التكوينات المتعلقة بهذه الوحدة فقط ، مثل:

  • compileSdkVersion - إصدار Android SDK لتجميع المشروع
  • minSdkVersion - الحد الأدنى من إصدار Android المدعوم
  • targetSdkVersion - الإصدار المستهدف من Android SDK ، يُستخدم لإخبار النظام بتمكين سلوكيات التوافق
  • applicationId - معرّف فريد للتطبيق على الجهاز وفي متجر Google Play
  • رمز الإصدار - رقم إصدار داخلي
  • versionName - اسم الإصدار المعروض للمستخدمين
  • compileOptions - خيارات الترجمة لتحقيق بعض ميزات Java 1.8
  • تبعيات - تبعيات مكتبة الطرف الأول والثالث ، تمت مناقشتها في الدروس التالية

AndroidManifest.xml هو المكان الذي نعلن فيه مكوناتنا الرئيسية. على سبيل المثال ، قد يحتوي ملف البيان الخاص بمدونة سفر على الأشياء التالية:

  • package - اسم حزمة التطبيق ، في حالتنا com.travelblog
  • الموضوع - موضوع التطبيق العالمي ، في حالتنا مادة MaterialComponents
  • label - التسمية التي يتم استخدامها كقيمة لأيقونة التطبيق
  • نشاط - نشاط ، لدينا حاليًا نشاط رئيسي واحد فقط

يجب وضع جميع الملفات المتعلقة بالموارد داخل المجلدات الفرعية المحددة مسبقًا لمجلد src / main / res. مجلد فرعي واحد ، على سبيل المثال ، هو مجلد التخطيط لجميع ملفات التخطيط الخاصة بك. سيكون لدينا أيضًا المجلد src / main / java لرمز مصدر Java الخاص بنا.

الخطوة 2: مكتبات Android

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

تعد إضافة مكتبة إلى مشروعك أمرًا سهلاً: قم بتعريف معرف المجموعة ومعرف الأداة والإصدار في قسم التبعيات في ملف التطبيق / build.gradle.

فيما يلي بعض المكتبات الأكثر استخدامًا اليوم:

  • appcompat - يجعل التطبيقات التي تم تطويرها باستخدام إصدارات أحدث تعمل مع الإصدارات الأقدم
  • القيد - يسمح بإنشاء تخطيطات كبيرة ومعقدة مع عرض هرمي مسطح
  • المواد - تجلب مكونات التصميم المادي إلى Android
  • التحديث - مكتبة عميل HTTP آمنة
  • موشي - مكتبة محلل JSON
  • أنسل - مكتبة تحميل الصور
  • غرفة - قاعدة بيانات Android ORM رسمية
  • خنجر - إطار حقن تبعي ثابت وثابت

Appcompat

تعد مكتبة appcompat رائعة لحل مشكلات التوافق بين الإصدارات الأحدث والأقدم من تطبيقك. المكون الأساسي هو AppCompatActivity. تتيح هذه الفئة الأساسية التوافق مع الإصدارات القديمة من تطبيقات Android. لإضافته إلى تطبيقك ، استخدم الكود التالي:

تنفيذ "androidx.appcompat: appcompat: 1.1.0"

تخطيط القيد

تمكنك هذه المكتبة من إنشاء تخطيطات معقدة باستخدام تدرج عرض مسطح. من الشائع استخدام ConstraintLayout كجذر لجميع ملفات التخطيط. لإضافته إلى تطبيقك ، استخدم الكود التالي:

تنفيذ "androidx.constraintlayout: constraintlayout: 1.1.3"

تصميم مادي

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

تنفيذ "com.google.android.material: material: 1.1.0-alpha10"

الخطوة 3: نشاط Android

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

على سبيل المثال ، قد يحتوي التطبيق على المكونات التالية:

  • LoginActivity - يمثل تدفق تسجيل الدخول
  • ListActivity - يمثل قائمة بعناوين المقالات الأخيرة
  • DetailActivity - يمثل مقالاً بحد ذاته

الأنشطة لها دورات حياتية خاصة بها ، لذا تقدم فئة النشاط ست عمليات استدعاء أساسية: onCreate () ، onStart () ، onResume () ، onPause () ، onStop () ، onDestroy (). عندما يترك المستخدم نشاطًا ، سيقوم النظام بتفكيك النشاط عن طريق استدعاء طرق مختلفة. يمكنك استخدام هذه الطرق للتحقق من وقت إنشاء نشاط أو تدميره ، أو أصبح مرئيًا أو مخفيًا ، إلخ.

يتضمن إنشاء نشاط خطوتين رئيسيتين: إنشاء فصل Java وتوسيعه من فئة النشاط الفائقة. يمكنك بعد ذلك استخدام مكتبة AppCompatActivity لتحقيق التوافق مع الإصدارات السابقة. يجب بعد ذلك الإعلان عن أنشطة Android في ملف AndroidManfiest.xml.

الخطوة 4: تخطيط Android

جانب آخر رئيسي لتطوير Android هو تطوير والعمل مع تخطيط Android. يحدد التخطيط الهيكل الشامل لواجهة المستخدم الخاصة بك (واجهة المستخدم). يتم إنشاء هذه باستخدام طرق العرض وطرق العرض.

قد تكون طرق العرض ، التي تسمى أيضًا عناصر واجهة المستخدم ، مكونات مثل TextView (تقديم النص) و EditText (يمكن للمستخدم كتابة نص) و Button (نص قابل للنقر).

تُعد ViewGroups ، التي تسمى أحيانًا التخطيطات ، مثل حاويات غير مرئية تحدد مكان إيواء عناصر معينة. هذا هو المكان الذي قد تستخدم فيه مكتبة Google ContraintLayout ، والتي تستخدم قيودًا لوضع الأدوات. طريقة Android SDK أبسط للمبتدئين ولكنها توفر مرونة أقل.

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

أولاً ، داخل مجلد التطبيق / src / main / res / layout ، قم بإنشاء ملف Activity_main.xmllayout. في هذا المثال ، سنستخدم تخطيط الجذر من خلال ConstraintLayout جنبًا إلى جنب مع بعض سمات XML:

  • layout_width = "match_parent": هذا يحدد عرض التخطيط.
  • android: layout_height = "match_parent": يحدد هذا ارتفاع التخطيط
  • xmlns: android و xmlns: app: هذه تحدد مساحة اسم XML ومساحة أسماء Android للسمات من Android SDK ومساحة أسماء التطبيقات للسمات من المكتبات

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

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

  • layout_constraintTop_toTopOf: هذا يصرح بوجود قيود لمحاذاة أعلى العرض مع أعلى ConstraintLayout
  • layout_constraintBottom_toBottomOf: يعلن هذا عن قيد لمحاذاة الجزء السفلي من العرض مع الجزء السفلي من ConstraintLayout
  • layout_constraintLeft_toLeftOf: يصرح هذا بقيد لمحاذاة يسار العرض إلى يسار ConstraintLayout
  • layout_constraintRight_toRightOf: يصرح هذا بقيد لمحاذاة يمين العرض إلى يمين ConstraintLayout

الآن بعد أن تم محاذاة كل شيء في المكان الذي نريده ، ننتقل إلى ربط التخطيط. يعمل هذا على ربط نشاط _main.xmllayout مع MainActivity. نقوم بذلك باستخدام طريقة setContentView عندما يتم إنشاء نشاط داخل طريقة onCreate.

يقبل الأسلوب setContentView معرف مورد التخطيط. تتم الإشارة إلى ذلك بواسطة فئة Android R التي يتم إنشاؤها تلقائيًا ، حيث يتم تخزين جميع معرفات الموارد. لأغراض الربط ، يمكننا استخدام R.layout.activity_mainto للحصول على معرّف Activity_main.xml حتى نتمكن من إخبار MainActivity لتقديم التخطيط من هذا الملف.

الخطوة الأخيرة هي ربط العرض ، مما يمكننا من التفاعل مع المشاهدات في وقت التشغيل. للقيام بذلك ، نقوم بربط العرض من XML إلى كائن Java.

أولاً ، نحدد معرفًا جديدًا لـ TextView باستخدام سمة id مع قيمة @ + id / mainTextView.

يمكننا الآن إجراء bing في TextView من XML إلى كائن Java باستخدام طريقة findViewById. ستغير طريقة setText نصنا لجعله تفاعليًا.

الآن أنت تعرف عملية البناء والتخطيط الأساسية لتطبيق Android! حان الوقت لتبدأ بنفسك! في القسم التالي ، سنرشدك إلى بعض الموارد المهمة لمساعدتك على البدء.

موارد لتطوير Android

الموارد الرسمية من جوجل وأندرويد

  • دليل Android الرسمي: دليل خطوة بخطوة لإنشاء تطبيق
  • عينات Android الرسمية: تعلم من خلال استكشاف المشاريع الأخرى التي تم إنشاؤها باستخدام Android
  • وثائق Android الرسمية: قائمة المكتبات والتفسيرات الفنية المتعمقة
  • مسرد مصطلحات Google Android: قائمة بالمصطلحات والمفردات الجديدة ، ومسرد مصطلحات تفاعلي

تعلم الأساسيات

  • أساسيات XML: دليل المبتدئين إلى XML ، يستخدم في تصميم وتخطيطات Java من Scratch
  • Java for Android (cheatsheet): كتاب متخصص لكتابة كود Java لنظام Android
  • دورة Kotlin Crash للمبرمجين: دورة عبر الإنترنت لمطوري Java للوصول إلى السرعة مع Kotlin لنظام Android
  • تعلم جافا من سكراتش: دورة مجانية عبر الإنترنت تغطي جميع أساسيات جافا
  • إرشادات Android: أفضل الممارسات والإرشادات الأساسية من GitHub

للمطورين المتوسط ​​/ المتقدم

  • تطوير تطبيقات Android: دورة Google المصممة لتعزيز مهارات Android
  • أنماط التصميم الشائعة لنظام Android: تعلم طرق جديدة لحل المشكلات في Kotlin
  • قائمة التحقق من الإصدار التجريبي لتطبيق متجر Google Play: تعرّف على كيفية إجراء عمليات إطلاق أكثر سلاسة
  • أفضل ممارسات تطوير Android: تعرف على جوانب Android التي يجب عليك استخدامها وتجنبها عندما يتعلق الأمر بأفضل الممارسات

هل تريد البدء في تطوير Android الآن؟

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

علاوة على ذلك ، تأتي الدورة ببيئة Android الفريدة التي تم تكوينها مسبقًا من Educative ، لذلك لا يتعين عليك تنزيل أي شيء للبدء. إنها واحدة من الدورات التدريبية الوحيدة المتوفرة مع هذه الأداة القوية!

تبدأ الدورة بمقدمة أساسية وتتحرك خلال كل مرحلة من مراحل التطوير ، بما في ذلك ...

  • مقدمة عن Android
  • شاشة الدخول
  • شاشة التفاصيل
  • شاشة القائمة
  • بحث وفرز
  • وظائف حاليا
  • مصادر إضافية
  • و اكثر

لم يكن من السهل أبدًا البدء في تطوير Android لدفع حياتك المهنية إلى المستقبل!

تعلم سعيد!