القائمة الرئيسية

الصفحات

مجموعة كورسات : كيف تصبح مطور تطبيقات أندرويد


المصدر:
Mohamed Tamer من مجموعة البرمجة بلغة الجافا
شكر خاص للأخ محمد تامر على الجهد الذي بذله لكتابة و تدوين كل هذه المعلومات .

مسار ال Android Developer  

الحمدلله من مجهودي الشخصي قدرت اعمل البوست العظيم دا بس كل اللي طالبة منكم دعوي حلوة اني احقق حلمي وهدفي. 
مسار الأندرويد كامل وازاي تبقي مطور تطبيقات اندرويد من غير ما تاخد ولا كورس برا في اي مكان هتتعلم كلة اونلاين بالعربي او بالانجليزي كمان  مصادر عربية واجنبية كمان , واكتر من مدرب واللي ترتاح في شرحة  دا فعلا حقيقي وعن تجربة شخصبة الحمدلله انا حاولت اجمع قدر ما استطعت من المصادر اللي انا اتعلمت منها شخصيا مجال الاندرويد خلال فترة التحدي بتاعي اللي عملتة اللي هو كان 200 Days of code  . واللي الحمدلله نجحت فية كانت نقلة عظيمة بالنسبة ليا اني اتعلم برمجة من غير ما ادفع ولا ربع جنية في كورس واحد اتعلمت الحمدللة كلة اون لاين بس لازم في كل دا يكون عندك هدف وطموح واصرارا والصبر عشان توصل لهدفك . 
انا مش هجبرك انك نتتعلم من الانترنت بس صدقني حقيقي دا كنز كبير وممكن توفر فلوسك وتتعلم كلة اونلاين وتبقي مطور ناجح في الاندرويد وزي ما قولت عن تجربة شخصة انا قررت اعمل البوست دا عشان لاقيت شباب كتيرة محتارة وخايفة واللي مش عارف يعمل اية او اية هو المسار الصح اللي يمشي علية اولا بس نصيحة للناس :
نصيحة للمبتدئين أكتر الأسئلة اللي اي مبتدئ في البرمجة بيسألها واللي حقيقي كنت انا كمان اتعلمتها في بدايتي وعرفت قد اية هي مهمة :
1- عايز اتعلم البرمجة أبدأ منين ؟!
أولا : حدد هدفك واعرف انتا لية عايز تتعلم البرمجة ولازم انك تحط ليك هدف لأن لو معندكش وهتفضل تتعلم وخلاص هتخس بعد كدا بملل وإحباط وتشتت بسبب انة معندكش اي هدف !
ثانيا : حدد مجالك لأنة عالم البرمجة كبيرة جدا متفرع ومتشعب كتير جدا فوق ما تتخيل هتحدداللي هتعلمة مثلا زي الأندرويد او الويب أو الديسك توب أو الذكاء الاصطناعي وغيرة كتييير .
2- اية هي المدة المطلوبة عشان اتقن لغة برمجة ؟!
مفيش مدة محددة ولكنها بتعتمد علي شخصيتك وقدرتك علي الاستيعاب والمثابرة والتعلم ومثال ممكن تتقن لغة في خلال ٦ أشهر وزي ما قولت بيرجع ليك الوقت دا.
------------------------------
طيب وبعد كدا اعمل تمام , لما تختار مجال الانرويد هتحتاج يكون عندك مواصفات جهازك اللي هتشتغل عليه عشان تشتغل وانتا مستريح علي جهازك :
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
--------------------------------------------------
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
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 جيجا
ودي شوية مساعدة من مجهودي الشخصي هتطبقها عشان الاجهزة الضعيفة :
مهم للناس اللي لسة مبتدئة في الأندرويد 
للناس اللي سألتني ازاي بتشتغل علي أندرويد استوديو برامات 4 جيجا ومعالج core i3  واللي انا منهم عقبال ما ربنا يكرم ، سهلة جدا وبسيطة بس اللي يتعب ويدور كان هيلاقي الحل ركزوا معايا :
1 - افتح ال File هتلاقي آخر حاجة تحت اسمها
Power save mode
ودي وظيفتها بتقلل استخدام الكومبيلر وبتخلية اوف لاين عشان بياخد نسبة كبيرة من الرامات وبيوقف بعض الحاجات اللي كلها استخدام كتير وبيحافظ علي استخدام البرنامج والجهاز في نفس الوقت
2- افتح setting اختار منها gradle هتلاقي في النص اختيار اسمة offline work
3 - ممكن تستغني عن الايملاتر الخاص بالاندرويد او الجهاز المحاكي وفي بديل كتييير جدا وبياخد مساحة قليلة من الرمات منهم المشهور جدا : genymotion 
او ممكن تعمل Run علي موبايلك ودي اسهل وأجمل الطرق بمجرد ما توصل موبيلك باللاب بتاعك هيجيلك اشعار من الاستوديو انك ممكن تعمل ربط مع موبيلك بس شرط خاصية ال
USB Debug
من اختيار developer options 
وبس خلاص ااقدر ااقولك تقدر تتعلم أندرويد وانتا مطمن عقبال ما ربنا يفتحها علينا ونعمل Upgrade للجهاز بتاعنا 
---------------------------------------------------------------------------
حلو اوي كدا يا عم محمد اعمل اية بقا بعد كدا عشان اتعلم بص يا صديقي دا مسار الاندرويد من البداية للنهاية :
  •  level one

1.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
2.OOP
 Class
 Object
 Member Variable
 Member method
 Constructor
 Access Modifiers
 Non-Access Modifiers
 Inheritance
 Polymorphism
 Interfaces
 Abstraction
3.Algorithm 
4.Data structure 
  • level two

 1.Data base
 SQLlite
 MySQL
 Firebase
  • level three

1.Introduction to Android
 What’s Android?
 Why Android
 Android Market
 Android Versions
 what’s new Android
2.Android Architecture
 Android Stack
 Android Features
 Android Architecture layer
3.Tools
 SDK (software development kit)
 JDK (java development kit)
 IDE (integrated development environment
4.Android Studio
 Setup Android Studio
 Android Manifest
 Important Folders
 Logcat
 Emulator and genymotion
5.Android Components
 Activities and services
 Broadcast Receivers
 Content Providers
6.Building Application UI
 Material design concept
 Layouts
 Layouts type
 attributes
 View class
7.Activities & Fragments
 Life Cycle
 Resources
 Navigation Drawer
 Tab layout
8.Intents
 Explicit Intents
 Implicit Intent
 Intent Filter
9.List View
 Adapter
 List views
 Custom views
 Recycler view
10.Android HTTP Client & REST web service "Retrofit"
 HTTP Request & Response
 Postman and parsing JSON
 upload Image to server
11.Advanced Topics
 Permissions
 Google Maps
 Select Image From Gallery OR Camera
 Shared preferences
 git version control
  • level four

 1.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 : محمد شوشان
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:-

المصدر:
Mohamed Tamer من مجموعة البرمجة بلغة الجافا
شكر خاص للأخ محمد تامر على الجهد الذي بذله لكتابة و تدوين كل هذه المعلومات .
هل اعجبك الموضوع :

تعليقات