مسار كيفية تعلم برمجة تطبيقات الاندرويد

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

مسار تعلم برمجة تطبيقات الاندرويد

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

 مصادر عربية وأجنبية وأكثر من مدرب واللي ترتاح في شرحه. 

 وعن تجربة شخصية الحمدلله أنا حاولت أجمع قدر ما استطعت من المصادر اللي أنا اتعلمت منها شخصيًا مجال الأندرويد .

1- عايز أتعلم البرمجة أبدأ منين ؟

أولًا: حدد هدفك واعرف إنت ليه عايز تتعلم البرمجة ولازم إنك تحط ليك هدف.
لأن لو معندكش وهتفضل تتعلم وخلاص هتحس بعد كدا بملل وإحباط وتشتت بسبب إن معندكش أي هدف!

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

2- إيه هي المدة المطلوبة عشان اتقن لغة برمجة وتعلم برمجة تطبيقات الاندرويد ؟!

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

  لما تختار مجال الأندرويد هتحتاج يكون عندك مواصفات جهازك اللي هتشتغل عليه عشان تشتغل وإنت مستريح على جهازك:

1- ‏Windows requirements

‏Microsoft Windows 7/8/10 (32-bit or 64-bit)

‏3 GB RAM minimum, 8 GB RAM recommended (plus 1 GB for the Android Emulator)

‏2 GB of available disk space minimum, 4 GB recommended (500 MB for IDE plus 1.5 GB for Android SDK and emulator system image)

‏1280 x 800 minimum screen resolution

تعلم برمجة تطبيقات الاندرويد

————————————————–

2- ‏Mac OS requirements

Mac OS X 10.10 (Yosemite) or higher, up to 10.13 (High Sierra)

‏3 GB RAM minimum, 8 GB RAM recommended (plus 1 GB for the Android Emulator)

‏2 GB of available disk space minimum, 4 GB recommended (500 MB for IDE plus 1.5 GB for Android SDK and emulator system image)

‏1280 x 800 minimum screen resolution

——————————————-

‏Linux OS requirements -3

GNOME or KDE desktop. Tested on Ubuntu 14.04 LTS, Trusty Tahr (64-bit distribution capable of running 32-bit applications)

‏64-bit distribution capable of running 32-bit applications

‏GNU C Library (glibc) 2.19 or later

‏3 GB RAM minimum, 8 GB RAM recommended (plus 1 GB for the Android Emulator)

‏2 GB of available disk space minimum, 4 GB recommended (500 MB for IDE plus 1.5 GB for Android SDK and emulator system image)

‏1280 x 800 minimum screen resolution

تعلم برمجة تطبيقات الاندرويد

————————————————–

– ودي شوية مساعدة  هتطبقها عشان الأجهزة الضعيفة:

مهم للناس اللي لسه مبتدئة في الأندرويد: 

 إزاي بتشتغل على أندرويد أستوديو برامات 4 جيجا ومعالج core i3 ، سهلة جدًا وبسيطة بس اللي يتعب ويدور كان هيلاقي الحل ركزوا معايا:

1 – افتح الـ File هتلاقي آخر حاجة تحت اسمها

‏Power save mode، ودي وظيفتها بتقلل استخدام الكومبيلر وبتخلية أوف لاين عشان بياخد نسبة كبيرة من الرامات وبيوقف بعض الحاجات اللي كلها استخدام كتير وبيحافظ على استخدام البرنامج والجهاز في نفس الوقت.

2- افتح setting اختار منها gradle هتلاقي في النص اختيار اسمه offline work.

3 – ممكن تستغني عن الإيملاتر الخاص بالأندرويد أو الجهاز المحاكي وفي بدايل كتييير جدًا وبياخدوا مساحة قليلة من الرامات، منهم المشهور جدًا: genymotion ، أو ممكن تعمل run على موبايلك ودي أسهل وأجمل الطرق بمجرد ما توصل موبايلك باللاب بتاعك هيجيلك إشعار من الأستوديو إنك ممكن تعمل ربط مع موبايلك بس شرط خاصية الـ USB Debug، من اختيار developer options .

وبس خلاص أقدر أقولك تقدر تتعلم أندرويد .


دا مسار تعلم برمجة تطبيقات الاندرويد من البداية للنهاية:

level one في تعلم برمجة تطبيقات الاندرويد :

– [ ‏Principles of java ]

  • ‏ What’s Java
  • ‏ Java history
  • ‏ Java Byte code
  • ‏ Java virtual machine
  • ‏ JRE Java runtime environment
  • ‏ JDK Java Development kit
  • ‏ SDK Software Development Kit
  • ‏ API Application Programming Interfaces
  • ‏ Variables
  • ‏ Data Types
  • ‏ Strings
  • ‏ Comments
  • ‏ Math Operations
  • ‏ Conditional statement if- switch
  • ‏ Looping
  • ‏ Arrays
  • ‏ Array List
  •  Exceptions
  •  Casting
تعلم برمجة تطبيقات الاندرويد

  • [OOP]

  •  Class
  •  Object
  •  Member Variable
  •  Member method
  •  Constructor
  •  Access Modifiers
  •  Non-Access Modifiers
  •  Inheritance
  •  Polymorphism
  •  Interfaces
  •  Abstraction
  • Algorithm 
  • Data structure 

level two في تعلم برمجة تطبيقات الاندرويد :

[Data base]

  •  SQLlite
  •  MySQL
  •  Firebase

level three في تعلم برمجة تطبيقات الاندرويد :

Introduction to Android

  •  What’s Android?
  •  Why Android
  •  Android Market
  •  Android Versions
  •  what’s new Android

 Android Architecture

  • Android Stack
  •  Android Features
  •  Android Architecture layer

Tools

  •  SDK (software development kit)
  •  JDK (java development kit)
  •  IDE (integrated development environment
تعلم برمجة تطبيقات الاندرويد

Android Studio

  • Setup Android Studio
  •  Android Manifest
  •  Important Folders
  •  Logcat
  •  Emulator and genymotion

Android Components

  •  Activities and services
  •  Broadcast Receivers
  •  Content Providers

 Building Application UI

  •  Material design concept
  •  Layouts
  •  Layouts type
  •  attributes
  •  View class

Activities & Fragments

  •  Life Cycle
  •  Resources
  •  Navigation Drawer
  •  Tab layout

Intents

  •  Explicit Intents
  •  Implicit Intent
  •  Intent Filter

  List View

  •  Adapter
  •  List views
  •  Custom views
  •  Recycler view

  Android HTTP Client & REST web service “Retrofit”

  •  HTTP Request & Response
  •  Postman and parsing JSON
  •  upload Image to server
تعلم برمجة تطبيقات الاندرويد

 Advanced Topics

  •  Permissions
  •  Google Maps
  •  Select Image From Gallery OR Camera
  •  Shared preferences
  •  git version control

level four :

 Kotlin

 Kotlin With Android studio

بعد كدا هتحتاج تتطور من نفسك اكتر وتتعلم لغة جديدة زي لغة Kotlin العظيمة عشان دي هتساعدك في انك تكتب كود أقل بكتير عكس جافا وإللي اساسا مبنية علي java.
هتقولي يعني استغني عن جافا ؟، لا طبعا لان جافا أساس كل حاجة.

سؤال الناس المحتارة ؟؟ استخدم كوتلن ولا جافا ؟ 

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

بدأت شركات كبيرة وصغيرة أنها تحول من جافا لكوتلن زى (netflix-pinterest-slack-twitter-reddit-evernote)

تقدر تكتب كود كوتلن على (Android Studio – IntelliJIDEA – Eclipse)

الإجابة :  هى ان ليك مطلق الحرية تستخدم جافا أو كوتلن .

طيب جوجل ليه اعتمدتها ؟

جوجل شافت انها افضل حل عشان تخلى المبرمج يركز على الفكرة اللى بيطبقها مش كم الكود اللى بيتكتب وكوتلن فيها مميزات كتير عن الجافا.
ومنها إنها بتجمع بين خصائص ال object-oriented programming وال functional programming.
وكمان بتعتبر الشعار الرسمى ليها هو (write more concise code) بمعنى تقدر تكتب كود اقل بنسبة 40% من اللى هتكتبوا باللغه الجافا .

واخر حاجة ممكن نعرفها عن الكوتلن هى ال Extensions زى ال Extension functions وهى انك تضيف function لأي class حتى لو كان مبنى فى اللغة نفسها من غير متضطر تلجأ لل inheritance او ال design patterns 

من الاخر كوتلن هتسهل عليك حاجات كتير وهنكتب عنها في المستقبل .

ودي المصادر اللى تقدر تعلم برمجة تطبيقات الاندرويد : 

__________________________________

تعلم برمجة تطبيقات الاندرويد باللغة العربية:

 level one

  • java + MySQL by : Hassouna Academy

من هنا .

  • java by : Muhammed Essa

اللينك الأول من هنا .

اللينك التاني من هنا .

  • Data Structures & Algorithm By : Adel Nasim 

من هنا .

تعلم برمجة تطبيقات الاندرويد
  • Data Structures & Algorithm By: mohamed shoshan 

من هنا .

  • Data Structures & Algorithm By : Hard-Code

من هنا .

  • Data Structures & Algorithm By : TheNewBaghdad

من هنا .

———————————————————

 level two

  • MySQL By : Hassouna Academy

من هنا .

  • MySQL By : Abdullah Almehmadi

من هنا .

  • MySQL By : Elzero Web School

من هنا .

———————————————————

level two

  • Firebase By : Koutaiba Altellawi

من هنا .

  • Firebase By : TheNewBaghdad

من هنا .

  • Firebase By : Ahmed Azz

من هنا .

—————————————————-

 level three

  • Android studio By : Muhammed Essa

من هنا .

  • Android studio By : TheNewBaghdad

من هنا .

  • Android studio By : Hassouna Academy

من هنا .

  • Android studio By : Salim 3dd

من هنا .

————————————————

 level four

Kotlin By : Mohamed Tamer

من هنا .

Kotlin By : TheNewBaghdad

من هنا .

Kotlin By : Hassouna Academy

من هنا .

Kotlin By : Muhammed Essa

من هنا .

{EN} باللغة الأنجليزية

  level one

  • java By : Mosh

من هنا .

  • java By : thenewboston

من هنا .

  • java By: freeCodeCamp

من هنا .

  • Data Structures & Algorithm By : CS Dojo

من هنا .

  • Data Structures & Algorithm By : freeCodeCamp

القناة الأولى من هنا .

القناة التانيه من هنا .

  • Data Structures & Algorithm By : Mosh

من هنا .

  • Data Structures & Algorithm By :  Naresh i Technologies

من هنا .

Data Structures & Algorithm By : Abdul Bari

من هنا .

————————————–

 level two

  • MySQL By : Mosh

من هنا .

  • MySQL By : freeCodeCamp

من هنا .

  • MySQL By : ProgrammingKnowledge

من هنا .

—————————————————————–

 level two

  • Firebase By : TVAC Studio

من هنا .

  • Firebase By : Hindi Tech Dude

من هنا .

——————————————————-

 level three

Android studio By : edureka

من هنا .

Android studio By : PRABEESH R K

من هنا .

Android studio By : Android Developer

من هنا .

Android studio By : ProgrammingKnowledge

من هنا .

Android studio By : Jerry Banfield

من هنا .

————————————–

 level four

1- Kotlin By : freeCodeCamp

من هنا .

2 – Kotlin By : freeCodeCamp

من هنا .

3 – Kotlin By : freeCodeCamp

من هنا .

Kotlin By : Telusko

من هنا .

Kotlin By : Derek Banas

من هنا .

مصار اخري : 

  • official Kotlin documentation :-

من هنا .

  • Kotlin Bootcamp for Programmers :-

من هنا .

  • Kotlin for Android Developers:-

من هنا .

  • Developing Android Apps with Kotlin:-

من هنا .

  • Advanced Android with Kotlin:-

من هنا .

كتبه | محمد تامر

اقرأ ايضاً:

إزاي تأسس نفسك في ال android development ؟