آموزش اندروید از پایه تا پیشرفته

یک توسعه‌دهنده ماهر اندروید می‌تواند مشکلات میلیون‌ها نفر را با ساخت تنها یک اپلیکیشن برطرف کند. امروزه حوزه برنامه‌نویسی اندروید یکی از پر تقاضاترین حوزه‌های موجود در برنامه‌نویسی است و طرفداران بسیار زیادی دارد. به ... ادامه

برگزارکننده:  مکتب‌خونه  مکتب‌خونه
مدرس دوره:
4.7 (7 رای)
سطح: مقدماتی
 پلاس
  
زمان مورد نیاز برای گذارندن دوره:  65 ساعت
مجموع محتوای آموزشی:  22 ساعت ویدئو - 43 ساعت تمرین و پروژه
 (قابل دانلود می‌باشد)
مهلت دوره:  9 هفته
  
حد نصاب قبولی در دوره:  70 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد. 
organization-pic  گواهینامه این دوره توسط مکتب‌خونه ارائه می‌شود.
course-feature   گواهی‌نامه مکتب‌خونه course-feature   خدمات منتورینگ course-feature   پروژه محور course-feature   تمرین و آزمون course-feature   تالار گفتگو course-feature   تسهیل استخدام

آنچه در این دوره می‌آموزیم:

 زبان کاتلین

 برنامه‌نویسی شی‌ءگرا

 گیت

 کسب مهارت در بخش‌های مختلف برنامه‌نویسی اندروید

سرفصل‌های دوره آموزش اندروید از پایه تا پیشرفته

فصل اول: نصب و راه‌اندازی اندروید استودیو

در این بخش قراره که باهم اندروید استودیو رو نصب کنیم و آماده‌ بشیم که در ادامه دوره کلی کارای خفن بکنیم. اگر گوشی اندرویدی ندارید اصلا نگران نباشید چون که قراره باهم نصب شبیه‌ساز رو هم یادبگیریم تا درصورت نیاز از اون برای توسعه اپلیکیشن‌هامون استفاده کنیم

 
  معرفی بخش نصب و راه‌اندازی اندروید استودیو
"01:21  
  نصب اندروید استودیو
"11:15  
  اجرای برنامه روی شبیه‌ساز و موبایل فیزیکی
"11:21  
فصل دوم: آموزش مقدماتی کاتلین

در این بخش قراره که از مرحله صفر برنامه‌نویسی کاتلین شروع کنیم، پله‌پله یادش بگیریم و توی کد زدن با این زبان حرفه‌ای بشیم.

 
  معرفی بخش آموزش مقدماتی کاتلین
"00:42  
  متغیرها و انواع داده‌ها
"16:19  
  String
"19:00  
  عملگرها
"13:40  
  عبارات شرطی
"08:30  
  عبارت When
"04:54  
  حلقه‌ها
"13:11  
  کوییز عبارات شرطی و String
 12.5%    
"02:00  
  آرایه و مجموعه‌ها
"08:21  
  Null Safety
"06:49  
  تابع - بخش اول
"08:28  
  تابع - بخش دوم
"09:38  
  تابع‌های Lambda و Extension
"10:10  
  Exception Handling
"12:51  
  کوییز Exception Handling و مجموعه‌ها
 25%    
"04:00  
  تمرین کار با کنسول اندروید استودیو (الزامی)
 62.5%    
"120:00  
فصل سوم: شی‌گرایی

در این بخش قراره که راجب یکی از مفاهیم حیاتی دنیای برنامه‌نویسی یعنی برنامه‌نویسی شی‌گرا یا Object Oriented Programming صحبت کنیم.

 
  معرفی بخش شی‌گرایی
"01:01  
  مقدمه‌ای از شی‌گرایی
"06:30  
  مثال عملی در شی‌گرایی
"09:37  
  Lateinit
"06:34  
  کلاس Enum
"05:52  
  ارث‌بری (Inheritance)
"11:21  
  سطح دسترسی‌ها
"09:52  
  کوییز ارث‌بری و Lateinit
 14.3%    
"02:00  
  محصورسازی (Encapsulation)
"06:40  
  چندریختی (Polymorphism)
"05:09  
  انتزاع (Abstraction)
"10:41  
  رابط (Interface)
"11:25  
  Generic
"04:10  
  کوییز Overloading و Overriding
 14.3%    
"02:00  
  تمرین مدیریت باغ وحش (الزامی)
 71.4%    
"180:00  
فصل چهارم: مقدمات برنامه‌نویسی اندروید

در این بخش قراره که یک مقدار راجع به activity و layout ها و همچین ساختار آن‌ها صحبت کنیم و مفاهیمی مثل context یا intent هم قراره ببینیم. یه پروژه کوچیک هم انتهای این بخش باهم کد می‌زنیم تا آماده بشیم برای پروژه‌های بزرگتری که تو ادامه راه باهاش قراره مواجه بشیم.

  معرفی بخش مقدمات برنامه‌نویسی اندروید
"00:51  
  بررسی اندروید استودیو
"10:39  
  مفهوم Activity در اندروید
"11:52  
  Layout - بخش اول
"10:11  
  Layout - بخش دوم
"10:28  
  کوییز Lifecycle و Layout
 15.4%    
"02:00  
  پروژه Bmi
"08:32  
  Activity پروژه BMI
"08:45  
  منطق پروژه BMI
"18:43  
  کوییز SP و DP
 7.7%    
"01:00  
  تمرین پیاده‌سازی اپلیکیشن BMI (الزامی)
 76.9%    
"120:00  
فصل پنجم: Git

در دنیای برنامه‌نویسی یک شبکه اجتماعی بزرگ وجود داره به اسم گیت‌هاب و شما هم برای اینکه از بقیه برنامه‌نویسا عقب نمونید و همچنین راحت‌تر بتونید یه بکاپ قوی از کدها و تغییراتتون رو پروژه‌ها داشته باشید باید با گیت و گیت‌هاب آشنا بشید، دقیقا کاری که باهم قراره توی این بخش انجام بدیم.

  معرفی بخش Git
"01:23  
  آشنایی با مفهوم ورژن کنترل سیستم و Git
"03:38  
  Commit
"07:59  
  Merge
"13:46  
  Merge Conflict
"09:41  
  کوییز Merge Conflict
 33.3%    
"01:00  
  Revert
"09:12  
  Stash
"10:38  
  Github
"09:03  
  مفهوم Push
"06:35  
  مفهوم Pull
"11:08  
  کوییز Push و Pull
 66.7%    
"02:00  
فصل ششم: ساختمان داده پشته (Stack)

در این بخش قراره که کمی راجب مفهوم ساختمان‌های داده یا Data Structures بخصوص Stack یا پشته صحبت کنیم تا آماده بشیم توی فصل بعدی یک ماشین‌حساب فوق العاده رو پیاده‌سازی کنیم.

  معرفی بخش ساختمان داده پشته (Stack)
"01:08  
  پشته (Stack) - بخش اول
"10:45  
  پشته (Stack) - بخش دوم
"11:05  
  کوییز مدل عبارت پسوندی (Postfix)
 14.3%    
"01:00  
  تمرین محاسبه مقدار عبارت پسوندی (Postfix) (الزامی)
 85.7%    
"60:00  
فصل هفتم: ماشین حساب

در این بخش قراره که اول از همه اون پشته‌ای که قراره کل بار محاسبات ماشین‌حساب مارو بدوش بکشه رو پیاده‌سازی کنیم.در ادامه راجب ساخت UIهای (موردی که کاربر میبینه از اپلیکیشن ما) انعطاف‌پذیر حرف می‌زنیم و با مفهوم Drawable آشنا می‌شیم که چطوری قراره UIهای مارو جذاب بکنه و نهایتا هم یکی دیگه از راه‌های نوشتن منطق برای کلیک‌شدن روی دکمه‌هامون رو یادخواهیم گرفت و کارو باهم درمیاریم.

  معرفی بخش ماشین حساب
"00:55  
  پیاده‌سازی کلاس عبارت
"08:55  
  پیاده‌سازی کلاس Infix به Postfix
"15:27  
  تابع Evaluate - بخش اول
"07:25  
  تابع Evaluate - بخش دوم
"17:48  
  پیاده‌سازی UI - بخش اول
"08:13  
  پیاده‌سازی UI - بخش دوم
"16:22  
  پیاده‌سازی UI - بخش سوم
"09:43  
  پیاده‌سازی UI - بخش چهارم
"08:40  
  منطق برنامه و آشنایی با مفهوم Casting
"13:04  
  نمایش ورودی‌های کاربر در صفحه
"07:13  
  تابع Onclick
"10:21  
  اصلاح خروجی ماشین حساب
"14:21  
  رفع باگ‌ها و اضافه‌کردن Onclick برای دکمه‌های باقی‌مانده
"21:24  
  تست‌نهایی
"12:23  
  کوییز Casting
 4.8%    
"01:00  
  تمرین پیاده‌سازی اپلیکیشن ماشین حساب (الزامی)
 95.2%    
"240:00  
فصل هشتم: اپلیکیشن خبری

ابتدای این بخش قراره راجب Recycler View حرف‌ بزنیم و اینکه چطوری با بکارگیری کلاس‌های POJO میتونیم لیستی از هرچیزی رو نشون کاربر بدیم. تو ادامه راه قراره مفاهیمی مثل API ,Library,JSON رو یادبگیریم که و بعد از اون کتابخونه فوق‌العاده مهم Retrofit رو خواهیم داشت تا دانش مارو تو بحث ارتباط‌ گیری با سرور تکمیل کنه. بحث فوق‌العاده مهم دیگه‌ای که تو این بخش مطرح میکنیم راجب چندنخی یا Multi Threading هستش که خواهیم دید کاتلین با کوروتین خودش چه قدر این بحث رو برامون شیرین میکنه. در نهایت هم کمی راجب Permissions صحبت میکنیم و کاره اپلیکیشن خبریمون رو تموم می‌کنیم.

  معرفی بخش اپلیکیشن خبری
"01:28  
  مفهوم RecyclerView
"04:44  
  پیاده‌سازی RecyclerView
"07:25  
  پیاده‌سازی کلاس News
"04:34  
  پیاده‌سازی کلاس‌ Adaptor - بخش اول
"09:17  
  پیاده‌سازی کلاس‌ Adaptor - بخش دوم
"14:36  
  مقداردهی اولیه RecyclerView
"06:54  
  مفهوم API
"07:50  
  مفهوم Library
"05:54  
  نگاهی عمیق به Json
"06:16  
  مفهوم Multi-threading
"06:16  
  Coroutine - بخش اول
"07:42  
  Coroutine - بخش دوم
"05:04  
  Coroutine - بخش سوم
"07:30  
  کوییز کتابخانه‌ها و Coroutine
 5.3%    
"04:00  
  اضافه‌کردن دو Library مهم به پروژه
"06:01  
  تغییر در کلاس News
"06:59  
  تغییر Adaptor
"05:56  
  Retrofit
"09:14  
  پیاده‎‌سازی Get
"06:31  
  متغیر Response
"08:57  
  Logging و Permissions
"06:43  
  پرکردن RecyclerView با اخبار دریافت‌شده
"07:47  
  بهبود UI
"07:15  
  اضافه‌کردن Divider
"04:45  
  انتقال به صفحه خبر انتخاب‌شده
"08:12  
  پکیج‌بندی و Refactoring
"05:35  
  کوییز Logging و Permissions
 5.3%    
"02:00  
  تمرین پیاده‌سازی اپلیکیشن خبری (الزامی)
 89.5%    
"300:00  
فصل نهم: لیست یادداشت‌ها

توی این بخش قراره راجب فرگمنت و Navigation Component صحبت کنیم و در ادامش راجب Linear Layout خواهیم گفت.  بعد از اون یکم راجب دیزاین سیستم‌هایی که وجود دارن صحبت میکنیم به سراغ Material Design می‌ریم و ازامکاناتی که داره استفاده می‌کنیم. مفاهیم دیگه ای که توی این بخش داریم برمیگرده به این که toast و snackbar چه چیزی هستن و بعدش میریم سراغ اینکه جدیدترین راهی که گوگل برای ذخیره دیتا های برناممون داخل گوشی به ما میده چیه و با Data Store آشنا می‌شیم و در نهایت هم با یادگیری نحوه ایجاد نوتیفیکیشن‌ها و آلارم ها، کار اپ لیست یادداشت‌هامون رو تموم می‌کنیم.

  معرفی بخش لیست یادداشت‌ها
"02:13  
  مفهوم Fragment
"11:18  
  Navigation Component
"12:58  
  نحوه جابجایی بین Fragment ها
"11:09  
  آشنایی با یک روت جدید و سیستم‌های طراحی
"13:45  
  طراحی صفحه اضافه‌کردن Task
"13:54  
  طراحی تصویر کلی RecyclerView
"18:11  
  پیاده‎‌سازی RecyclerView Adapter
"11:55  
  مفهوم اتصال داده‌ها (Data Binding)
"09:28  
  Date Picker و Time Picker - بخش اول
"10:37  
  Date Picker و Time Picker - بخش دوم
"07:18  
  پیاده‌سازی Todo Object
"08:36  
  تست اپلیکیشن با Toasts
"10:52  
  کوییز Snackbar
 2.6%    
"01:00  
  نمایش Taskها در RecyclerView
"11:25  
  بهبود ظاهر اپلیکیشن
"10:35  
  Merge به Master
"04:28  
  حذف آیتم از RecyclerView
"06:53  
  روش‌های ذخیره‌سازی اطلاعات در اندروید
"04:28  
  Data Store - بخش اول
"06:20  
  پیاده‌سازی کلاس Todo List Serializer - بخش اول
"06:26  
  پیاده‌سازی کلاس Todo List Serializer - بخش دوم
"07:18  
  Data Store - بخش دوم
"10:51  
  Data Store - بخش سوم
"09:47  
  تست ذخیره‌سازی Task
"06:59  
  مقدمه پیاده‌سازی Notifiction ها
"11:04  
  مفهوم Broadcast Receiver و تنظیم تاریخ دقیق برای Notification ها
"12:48  
  Alarm Manager و Pending Intent
"09:05  
  تابع onReceive
"12:32  
  تست Notification
"09:30  
  هدایت کاربر به برنامه از طریق Notification
"07:57  
  کوییز Root Layouts
 2.6%    
"01:00  
  تمرین پیاده‌سازی اپلیکیشن لیست یادداشت‌ها (الزامی)
 94.7%    
"600:00  
فصل دهم: موزیک پلیر

در این بخش قراره راجع یک Library قدرتمند به اسم ExoPlayer حرف بزنیم و با دو عنصر مهم View Pager و Tab Layout آشنا بشیم. ادامه راه قراره نحوه پیاده‌سازی سرچ توی لیست هامون یادبگیریم و یک نوع دیگه ای Data Store رو پیاده‌سازی کنیم. در نهایت هم میبینیم که برای اینکه از اپلیکیشنمون خروجی صحیح بگیریم چه مراحلی رو باید طی کنیم تا بتونیم بعدا در مارکت پلیس‌های مختلف انتشارش بدیم.

  معرفی بخش موزیک پلیر
"02:18  
  پیاده‌سازی NavComponent و مفهوم Splash Screens
"09:19  
  پیاده‌سازی Splash Screen
"08:39  
  ViewPager با استفاده از Fragments
"17:07  
  پیاده‌سازی کلاس موزیک
"08:36  
  پیاده‌سازی Adaptor
"13:11  
  لیست‌کردن فایل‌های موسیقی دستگاه
"16:18  
  تست اپلیکیشن و بهبود‌ ظاهر برنامه
"11:07  
  اضافه‌کردن یک کتابخانه
"05:18  
  اجرای اولین موزیک
"13:37  
  توقف موزیک و ProgressBar - بخش اول
"08:58  
  توقف موزیک و ProgressBar - بخش دوم
"09:04  
  دکمه‌های دیگر پخش‌کننده
"11:56  
  اضافه‌کردن موزیک به بخش موسیقی‌های موردعلاقه
"05:31  
  پیاده‌سازی کلاس Favorite Songs
"08:38  
  اضافه‌کردن فونت فارسی به اپلیکیشن
"09:01  
  پیاده‌سازی امکان جستجو - بخش اول
"13:32  
  پیاده‌سازی امکان جستجو - بخش دوم
"06:43  
  نوشتن اسم خواننده و اسم آهنگ
"07:01  
  Alert Dialog
"07:04  
  Prefrences Data Store
"21:42  
  حذف از Database
"06:25  
  رفع باگ‌ها و خروجی‌گرفتن صحیح از اپلیکیشن
"18:01  
  پروژه پایان دوره (الزامی)
 100%    
"960:00  

ویژگی‌های دوره

گواهی‌نامه مکتب‌خونه
گواهی‌نامه مکتب‌خونه

در صورت قبولی در دوره، گواهی نامه رسمی پایان دوره توسط مکتب‌خونه به اسم شما صادر شده و در اختیار شما قرار می گیرد.

مشاهده نمونه گواهینامه

ویژگی‌های دوره

خدمات منتورینگ
خدمات منتورینگ

خدمات منتورینگ به معنای برخورداری دانشجو از راهنما یا پشتیبان علمی در طول گذراندن دوره می‌باشد. این خدمات شامل پاسخگویی به سوالات آموزشی(در قالب تیکتینگ)، تصحیح آزمون یا پروژه های دوره و ارائه باز خورد موثر به دانشجو می‌باشد.

ویژگی‌های دوره

پروژه محور
پروژه محور

این دوره طوری طراحی شده است که محتوای آموزشی دوره حول چند پروژه واقعی و کاربردی هستند تا یادگیری دانشجو در طول دوره به کاربردهای عملی تبدیل شود و به این ترتیب بالاترین سطح یادگیری را فراهم نمایند.

ویژگی‌های دوره

تمرین و آزمون
تمرین و آزمون

با قرار گرفتن تمرین ها و آزمون های مختلف در طول دوره، محیطی تعاملی فراهم شده است تا بهره گیری از محتوا و یادگیری بهتر و عمیق تر شود.

ویژگی‌های دوره

تالار گفتگو
تالار گفتگو

شما می توانید از طریق تالار گفتگو با دیگر دانشجویان دوره در ارتباط باشید، شبکه روابط حرفه ای خود را تقویت کنید یا سوالات مرتبط با دوره خود را از دیگر دانشجویان بپرسید.

ویژگی‌های دوره

تسهیل استخدام
تسهیل استخدام

در صورت قبولی در دوره، شما می‌توانید با وارد کردن اطلاعات آن در بخش دوره‌های آموزشی رزومه‌ساز «جاب ویژن»، تایید مهارت خود را در قالب اضافه شدن «مدال مهارت» به روزمه آنلاین خود دریافت نمایید. این مدال علاوه بر ایجاد تمایز در نمایش رزومه شما، باعث بالاتر قرار گرفتن آن در لیست انبوه رزومه‌های ارسالی به کارفرما شده و بدین ترتیب شانس شما را برای استخدام در سازمانهای موفق و پر متقاضی افزایش می‌دهد.

بررسی فرصت‌های شغلی

درباره دوره

یک توسعه‌دهنده ماهر اندروید می‌تواند مشکلات میلیون‌ها نفر را با ساخت تنها یک اپلیکیشن برطرف کند. امروزه حوزه برنامه‌نویسی اندروید یکی از پر تقاضاترین حوزه‌های موجود در برنامه‌نویسی است و طرفداران بسیار زیادی دارد. به همین منظور دوره آموزش اندروید از پایه تا پیشرفته مکتب‌خونه با هدف آموزش مهارت‌ کدنویسی در این زمینه تهیه شده است که در ادامه به معرفی آن خواهیم پرداخت و در بخش بیشتر بدانید نقشه راه کاملی را در اختیار کاربران برای موفقیت در دنیای اندروید را ارائه خواهیم داد.

 

دوره آموزش اندروید از پایه تا پیشرفته

دوره آموزش اندروید از پایه تا پیشرفته به مباحث مختلف موجود در  برنامه‌نویسی اندروید می‌پردازد و کاربران می‌توانند از محتوای آن استفاده لازم را ببرند. در این دوره آموزش برنامه‌نویسی اندروید کاربران اصول کلی طراحی اپلیکیشن‌ها را در کنار زبان کاتلین یاد خواهند گرفت و می‌توانند به مهارت‌های خود در توسعه اندروید بیفزایند. دوره آموزش نام برده کاملاً پروژه محور بوده و برای افراد علاقه‌مند یکی از جدیدترین و بهترین دوره‌های مکتب‌خونه و دوره‌های موجود در زبان فارسی به‌حساب می‌آید.

 

دوره آموزش اندروید از پایه تا پیشرفته برای چه کسانی مناسب است؟

 دوره آموزش اندروید از پایه تا پیشرفته با زبانی ساده و شیوا به بیان مفاهیم می‌پردازد. این دوره برای کسانی که آشنایی قبلی با حداقل یکی از زبان‌های برنامه‌نویسی داشته باشند می‌تواند مناسب باشد. در طول این دوره در کنار برنامه‌نویسی اندروید، زبان کاتلین نیز آموزش داده خواهد شد.

 

بعد از گذراندن دوره آموزش اندروید از پایه تا پیشرفته کاربران چه مهارت‌هایی را کسب می‌کنند؟

کاربران بعد از گذراندن دوره آموزش اندروید پیشرفته می‌توانند به مهارت‌های زیر تسلط یابند:

  • تسلط کامل به کاتلین
  • توانایی ساخت اپلیکیشن اندرویدی از صفر تاصد
  • تسلط به مهارت‌های جستجو در زمینه توسعه اندروید

 

مزایای شرکت در این دوره اندروید از پایه تا پیشرفته چیست؟

کسانی که در این دوره آموزش اندروید از پایه تا پیشرفته شرکت می‌کنند نه‌ تنها مهارت‌های جدید و حرفه‌ای توسعه اندروید را یاد می‌گیرند، بلکه این امکان برای آن‌ها فراهم می‌شود که با توانایی که کسب‌ میکنند فرصت استخدام در شرکت‌های مختلف را پیدا کرده و با قبول پروژه‌ها در ایران و یا در خارج از ایران درآمد ارزی را داشته باشند.

 

درباره استاد

maktabkhooneh-teacher امین سخا

امین سخا، فارغ التحصیل کارشناسی رشته مهندسی‌ کامپیوتر در دانشگاه شهید بهشتی، از سال ۱۳۹۶ با یادگیری زبان پایتون به صورت جدی وارد دنیای برنامه‌نویسی شد و در سال ۱۳۹۹ به صورت تخصصی وارد حوزه برنامه‌نویسی موبایل بخصوص اندروید شد. او از همان سال، با ورود به یکی استارتاپ‌های مستقر در پارک فناوری دانشگاه شهید‌بهشتی به صورت کامل با برنامه‌نویسی اندروید به همراه زبان کاتلین و جاوا آشنا شد و تجربه خوبی در چگونگی فرایند تولید و توسعه یک اپلیکیشن و همچنین چالش‌هایی که در این زمینه وجود دارد کسب‌کرد و هم اکنون به عنوان سرپرست تیم اندروید آنجا مشغول به کار میباشد.

مشاهده پروفایل و دوره‌‌های استاد

نظرات کاربران

تا کنون نظری برای این دوره ثبت نشده است. برای ثبت نظر باید ابتدا در دوره ثبت نام کرده و دانشجوی دوره باشید.
حامد نقیبی نوقابي 1402-07-27
خواهشمند است مانند بعضي دوره هاي ديگر امكان تصحيح خودكار كد را فراهم كنيد . در مجموع دوره خوبي براي سطح مبتدي و متوسط ميباشد
حسام خواجه میری 1402-07-15
عالی
محمدجواد فرمانی 1402-06-20
دوره به شدت کاربردی، مفید و جذاب بود. سطح تسلط و دانش استاد فوق العاده بود. به هیچ وجه از تهیه دوره پشیمون نمیشد.
رضا رحمانی 1402-04-09
واقا دوره عالی هست کیفیت صدا خیلی خوب و مباحث مبتدی و متوسط کامل اموزش داده شد

دوره‌های پیشنهادی

سوالات پرتکرار

آیا در صورت خرید دوره، گواهی نامه آن به من تعلق می گیرد؟
خیر؛ شما با خرید دوره می توانید در آن دوره شرکت کنید و به محتوای آن دسترسی خواهید داشت. در صورتی که در زمان تعیین شده دوره را با نمره قبولی بگذرانید، گواهی نامه دوره به نام شما صادر خواهد شد.

سوالات پرتکرار

حداقل و حداکثر زمانی که می توانم یک دوره را بگذرانم چقدر است؟
برای گذراندن دوره حداقل زمانی وجود ندارد و شما می توانید در هر زمانی که مایل هستید فعالیت های مربوطه را انجام دهید. برای هر دوره یک حداکثر زمان تعیین شده است که در صفحه معرفی دوره می توانید مشاهده کنید که از زمان خرید دوره توسط شما تنها در آن مدت شما از ویژگی های تصحیح پروژه ها توسط پشتیبان و دریافت گواهی نامه بهره مند خواهید بود.

سوالات پرتکرار

در صورت قبولی در دوره، آیا امکان دریافت نسخه فیزیکی گواهی نامه دوره را دارم؟
خیر، به دلیل مسائل زیست محیطی و کاهش قطع درختان، فقط نسخه الکترونیکی گواهی‌نامه در اختیار شما قرار می‌گیرد

سوالات پرتکرار

پس از سپری شدن زمان دوره، به محتوای دوره دسترسی خواهم داشت؟
بله؛ پس از سپری شدن مدت زمان دوره شما به محتوای دوره دسترسی خواهید داشت و می توانید از ویدئوها، تمارین، پروژه و دیگر محتوای دوره در صورت وجود استفاده کنید ولی امکان تصحیح تمارین توسط پشتیبان و دریافت گواهی نامه برای شما وجود نخواهد داشت.

نقشه راه برنامه‌نویسی اندروید

اندروید یک سیستم‌عامل منبع باز مبتنی بر هسته لینوکس است که بر روی گوشی‌های هوشمند، تبلت‌ها و سایر دستگاه‌های تلفن همراه اجرا می‌شود. همچنین برای ساعت‌های هوشمند و تلویزیون‌های جدید نیز این سیستم‌عامل ایجاد شده است. هرکدام رابط کاربری خاص خود را دارند. به‌جرات می‌توان گفت اندروید محبوب‌ترین سیستم‌عامل‌های گوشی‌های هوشمند است. سیستم‌عامل اندروید توسط شرکت اندروید ساخته شد که توسط گوگل در سال 2005 خریداری شد. برنامه‌های اندرویدی مختلفی مانند بازی، پخش‌کننده موسیقی و دوربین برای این تلفن‌های همراه توسعه داده شده است. بیش از 3.5 میلیون برنامه در فروشگاه Google Play وجود دارد. در مقیاس جهانی، اندروید هنوز هم بهترین سیستم‌عامل موبایل به‌‌ حساب می‌آید که سهم آن در بازار جهانی موبایل‌ها به بیش از ۷۰ درصد میرسد که گواه بر محبوبیت این سیستم‌عامل میباشد.

 

چرا اندروید؟

قبل از اینکه بخواهید وارد حوزه برنامه‌نویسی اندروید شوید و در دوره آموزش از پایه تا پیشرفته اندروید شرکت کنید، باید هدف روشنی در ذهن داشته باشید که چرا می‌خواهید به دنیای اندروید ورود کنید. آیا برای پروژه‌های دانشگاهی شما در دانشگاه است؟ آیا این برای شغل طولانی مدت یا فقط برای سرگرمی است؟ یا می‌خواهید با توسعه برنامه‌های خود یک کسب‌وکار ایجاد کنید؟ پس ابتدا یک هدف مشخص داشته باشید. چرا می‌خواهید اندروید را یاد بگیرید؟ به عنوان مثال، اگر می‌خواهید اندروید را برای پروژه‌های دانشگاهی خود یاد بگیرید، کافی است فقط چیزهای مبتدی را در اندروید یاد بگیرید. به طور مشابه، اگر می‌خواهید به عنوان یک مهارت شغلی آن را یاد بگیرید، باید چیزهای حرفه‌ای یا پیشرفته را نیز یاد بگیرید که اتفاقاً دوره آموزش اندروید از پایه تا پیشرفته با این هدف تهیه شده است؛ بنابراین این در دست شماست و این تصمیم شماست که چرا می‌خواهید اندروید را یاد بگیرید.

 

چگونه اندروید را یاد بگیریم؟

در اندروید برنامه‌نویسی به دو زبان JAVA یا Kotlin انجام می‌شود و همچنین بخش مربوط به طراحی دیزاین‌های آن با استفاده از زبان XML (Extension Markup Language) صورت میگیرد. البته اخیرا با معرفی رویکرد جدیدی به نام Jetpack Compose طراحی صفحات و دیزاین‌ها اندکی راحت‌تر شده است اما یادگیری این مورد نیازمند درک خوب شما از XML میباشد .

 

جاوا یا کاتلین؟

جاوا اولین زبان رسمی برای توسعه برنامه‌های اندروید است و همچنان تعداد بسیاری از برنامه‌های موجود در فروشگاه Play با این زبان کدنویسی شده‌اند. کاتلین یک زبان برنامه‌نویسی چند پلتفرمی به‌ شمار می‌آید که از سال ۲۰۱۹ رسما توسط شرکت گوگل به عنوان زبان رسمی توسعه اندروید شناخته شد و تا به امروز تغییرات شگرف و موثری را به خود دیده تا نشان دهد شایستگی جایگزینی در برابر زبان برنامه‌نویسی قدرتمندی همچون جاوا را داراست. رسالت ایجاد کاتلین بر این بود که زبان جاوا را تقویت کند، مشکلاتی که در آن وجود داشت را حل کند و در نهایت سادگی به آن ببخشد. با این تفسیر این زبان می‌تواند به عنوان یک نقطه ورود برای توسعه برنامه اندروید استفاده شود. دوره آموزشی اندروید از پایه تا پیشرفته نیز مبنی بر همین زبان است.

 

نقشه راه توسعه اندروید

برای ورود به دنیای اندروید ابتدا با مرور کلی اندروید شروع کنید. برخی از مقالات مربوط به اندروید را بخوانید و همچنین در مورد موارد مرتبط با اندروید تحقیق کنید. به عنوان مثال مقالاتی در زمینه مقدمه توسعه اندروید، تاریخچه اندروید، نسخه‌های مختلف اندروید و همچنین موضوعاتی مانند چرا کاتلین جایگزین جاوا برای توسعه برنامه اندروید و غیره می‌شود و غیره را بخوانید و یک آرایش کامل ذهنی برای شروع سفر خود در اندروید انجام دهید. برای یادگیری اندروید و ساختن چند پروژه عالی در اندروید، انگیزه خود را ایجاد کنید. این کار را به طور منظم انجام دهید و همچنین شروع به یادگیری یک‌به‌یک مفهوم جدید در اندروید کنید. برای این هدف انواع کتاب آموزش اندروید و مقالات وبلاگ وجود دارد که از آن‌ها می‌توانید استفاده کنید. به‌صورت کلی در پایین 20 مرحله برای ورود به دنیای اندروید آورده شده است که می‌توان کمک حال خوبی برای علاقه‌مندان به اندروید باشد.
در این دوره سعی شده بخش زیادی از موارد زیر پوشش داده شود اما همانطور که بالاتر اشاره شد، لازمه‌ی یادگیری بیشتر مطالعه‌ی مستمر مقاله‌ها و منابع مختلف است.

1) برنامه‌نویسی

می‌توان این مرحله را به عنوان یک پیش‌نیاز در نظر گرفت. قبل از شروع یادگیری اندروید، دانستن یکی از زبان‌های برنامه نویسی میتواند مفید باشد.

جاوا برای توسعه اندروید

جاوا برای یک دهه قبل از جایگزین شدن توسط Kotlin در سال 2019، زبان برگزیده اندروید بود. این یک زبان برنامه‌نویسی منبع باز، شی گرا و مبتنی بر کلاس است. اگرچه جاوا در کنار زبان هایی مانند زبان C، PHP و غیره زبانی قدیمی به‌حساب می‌آید، اما دلایلی وجود دارد که یکی از محبوب‌ترین زبان‌های برنامه‌نویسی است:

  • تقریباً روی هر سیستمی کار می‌کند
  • برای وب‌سایت‌ها و برنامه‌های موبایل استفاده می‌شود
  • متن‌باز
  • کاربرد گسترده
  • شی گرا

کاتلین برای توسعه اندروید

به عنوان زبان رسمی توسعه اندروید، Kotlin جایگزین جاوا شده است. شرکت JetBrains آن را در سال 2011 ایجاد کرد و در ادامه با همکاری گوگل به طور پیوسته درحال توسعه بوده است.

در اینجا ویژگی‌های اصلی Kotlin آمده است:

  • ساده
  • قابل فهم
  • سبک‌وزن
  • برپایه JVM
  • ویژگی‌های برنامه‌نویسی شی‌گرا و تابعی را با هم ترکیب می‌کند
  • با بکارگیری رویکرد جدید KTOR برنامه‌نویسی بک‌اند امکان پذیر شده است.
  • با بکارگیری رویکرد جدید KMM امکان برنامه‌نویسی IOS امکان پذیر شده است.

2) اندروید استودیو

قبل از اینکه بخواهید از ابزارهای موجود برای توسعه اندروید استفاده کنید، بهتر است ابتدا آن‌ها را بشناسید. Android Studio محیط توسعه یکپارچه رسمی برای سیستم‌عامل اندروید گوگل است که بر اساس نرم‌افزار JetBrains IntelliJ IDEA ساخته‌شده و به طور خاص برای توسعه اندروید به کار می‌رود. ساختار فایلها در اندروید استودیو به‌صورت فهرست موارد زیر است:

  • AndroidManifest
  • Java
  • Res
  • Drawable
  • Layouts
  • Mipmap
  • Values
  • Xml
  • Gradle Scripts

3) اجزای اندروید

برنامه اندروید از بلوک‌های مختلفی تشکیل شده است که هر فرد توسعه‌دهنده اندروید باید با آن‌ها آشنا باشد. این کامپوننت‌هایی که به‌طور آزاد متصل شده‌اند توسط فایل مانیفست (manifest) برنامه که حاوی توضیحاتی درباره هر جزء و نحوه تعامل آن‌ها است، محدود می‌شوند. در دوره آموزش از پایه تا پیشرفته اندروید توضیحات کاملی در این رابطه ارائه شده است. به‌صورت کلی اجزای اندروید شامل مواردی است که در ادامه آمده‌اند که هرکدام شامل یادگیری زیر اجزایی مختلف خواهد بود:

فعالیت (Activity)

  • هرگونه فعالیت و موارد مرتبط به چرخه حیات
  • کنترل تغییرات وضعیت فعالیت
  • Tasks و Back Stack
  • فرآیندها و چرخه حیات برنامه

خدمات (Services)

سرویس‌ها همان پردازش‌هایی هستند که در پس‌زمینه انجام می‌شود و یک برنامه را کنترل می‌کنند.

  • انواع خدمات اندروید
  • چرخه حیات خدمات اندروید

ارائه‌دهنده محتوا (Content Provider)

 این مؤلفه‌ها به مدیریت مسائل مرتبط به پایگاه‌های داده می‌پردازند.

  • URI محتوا
  • عملیات در ارائه‌دهنده محتوا
  • کار ارائه‌دهنده محتوا
  • ایجاد یک ارائه‌دهنده محتوا

گیرنده پخش (Broadcast Receiver)

این کامپوننت‌ها ارتباط بین سیستم‌عامل اندروید و برنامه‌ها را کنترل می‌کنند.

  • استثناهای پخش ضمنی

4) با آناتومی اپلیکیشن اندورید

مهندسان خودرو نمی‌توانند خودرویی بسازند بدون اینکه بدانند از چه قطعاتی تشکیل شده است. همین امر در مورد توسعه‌دهندگان اندروید نیز صدق می‌کند. به‌صورت کلی توسعه‌دهندگان باید با آناتومی اپلیکیشن آشنا باشند تا بتوانند آن را به‌صورت کامل درک کنند. این آناتومی شامل مواردی زیر است:

  • فعالیت
  • قطعات
  • اهداف
  • خدمات
  • مانیفیست برنامه
  • منابع

5) طراحی UI

پس از اینکه در مورد اجزای مختلف اندروید ایده گرفتید، نوبت به تحقیق و بررسی در مورد طراحی رابط کاربری است که این بخش خود شامل موارد متعددی خواهد بود که مهم‌ترین آن‌ها به‌صورت موارد زیر هستند.

بحث طرح‌بندی اپلیکیشن شامل:

  • Frame
  • مباحث Constraint
  • مباحث Liner
  • مباحث Relative
  • Grid

بحث مشاهده عناصر شامل:

  • TextView
  • ویرایش متن
  • دکمه‌ها
  • ImageView

6) طراحی UI پیچیده

قدم بعدی در توسعه اندروید مربوط به مباحث پیچیده UI است که در دوره آموزش پیشرفته اندروید به این مباحث پیچیده پرداخته شده است و شامل موارد زیر خواهد بود:

  • RecycleView
  • Dialogs
  • TabLayout
  • ViewPager
  • NestedTextView
  • MaterialDesign

7) ذخیره‌سازی در اندروید

در اندروید سه نوع سیستم ذخیره‌سازی وجود دارد:

  • Data Store
  • Room Data Base
  • استفاده از سرور

یک توسعه‌دهنده حرفه‌ای اندروید باید با تمامی مباحث ذخیره‌سازی در برنامه‌نویسی اندورید آشنا باشد.

8) معماری اپلیکیشن اندروید

بخش‌های اصلی معماری عبارت‌اند از:

  • معماری کد
  • تزریق وابستگی
  • تضمین کیفیت

معماری کد

الگوی معماری Model-View-Controller (MVC) یک برنامه کاربردی را به سه جزء منطقی تقسیم می‌کند: مدل، نما و کنترلر. هر یک از این مؤلفه‌ها برای رسیدگی به بخش‌های خاصی از توسعه برنامه طراحی شده‌اند.

الگوی معماری Model-view-presenter (MVP) از نسل الگوی معماری مدل-نمای-کنترل کننده (MVC) است که بیشتر برای ایجاد رابط‌های کاربری استفاده می‌شود. در MVP، مجری نقش «واسطه» را بر عهده می‌گیرد. در MVP، ارائه‌کننده مسئول تمام منطق ارائه است.
الگوی Mode-View-ViewModel از Data Binding استفاده می‌کند تا اطمینان حاصل شود که هر نما دقیقاً حاوی یک متغیر به نام vm بوده که مخفف ViewModel است. ایده این خواهد بود که ViewModel باید شامل تمام اطلاعات موردنیاز برای نمایش View باشد. یک مدل نمای واحد را می‌توان با چندین نما به اشتراک گذاشت. این امکان استفاده مجدد از عملکرد برای یک طرح‌بندی متفاوت را فراهم می‌کند.

تزریق وابستگی

تزریق وابستگی تکنیکی است که در آن یک شی وابستگی‌های یک شی دیگر را تأمین می‌کند. وابستگی شیئی است که می‌توان از آن استفاده کرد. تزریق عبارت است از انتقال یک وابستگی به یک شی وابسته که از آن استفاده می‌کند.


تضمین کیفیت

تضمین کیفیت روشی برای جلوگیری از بروز مشکلات در هنگام ارائه محصولات یا خدمات به مشتریان با جلوگیری از نقص و نقص در محصولات تولیدی است.

9) ساخت

مراحل ساخت اپلیکیشن اندروید در دو استپ خلاصه می‌شود:

  • گریدل (فرایند کامپایل در اندروید استودیو)
  • اشکال‌زدایی/پیکربندی انتشار

10) موضوعات نخ و هم‌زمانی

استپ 10 در نقش‌ راه توسعه اندروید یادگیری مباحث مربوط به نخ‌ها (Threads) است که اهمیت ویژه‌ای در توسعه اندروید دارد.


11) اشکال‌زدایی برنامه اندروید

یکی از مهم‌ترین مهارت‌های یک توسعه‌دهنده، مهارت اشکال‌زدایی است؛ بنابراین دیباگران یا اشکال زدایان باید این موارد را یاد بگیرد:

  • استثناها
  • رسیدگی به خطا
  • ورود به سیستم
  • پروفایل سازی حافظه

12) نشت حافظه

مبحث نشت حافظه نیز در توسعه اندروید بسیار مهم است و برنامه‌نویس یا توسعه‌دهنده اندورید باید با مواردی مانند زیر در این رابطه آشنا باشد:

  • علت نشت حافظه
  • شناسایی و رفع نشت حافظه

13) کتابخانه‌های شخص ثالث

کتابخانه‌های شخص ثالث زیادی برای توسعه اندروید موجود است که مهم‌ترین آن‌ها شامل:

کتابخانه‌های بارگذاری تصاویر شامل:

  • Glide
  • Picasso
  • Fresco
  • COIL

کتابخانه‌های تزریق وابستگی شامل:

  • Dragger

کتابخانه‌های شبکه‌سازی شامل:

  • Retrofit

کتابخانه‌های چند رشته‌ای یا چند نخی شامل:

  • Coroutines
  • Rxjava

14) Android Jetpack

Android Jetpack مجموعه‌ای از کتابخانه‌ها، ابزارها و راهنمایی‌های معماری برای کمک به ساخت سریع و آسان برنامه‌های اندرویدی عالی است. این کد زیرساخت مشترک را ارائه می‌دهد تا بتوانید روی چیزی که برنامه شمارا منحصربه‌فرد می‌کند تمرکز کنید. یک توسعه‌دهنده حرفه‌ای اندروید بدون شک باید با این ابزار عالی آشنا باشد که خود شامل موارد زیر است:

  • کتابخانه AppCompat
  • اجزای معماری
  • انیمیشن و انتقال
  • اندروید Ktx
  • جهت‌یابی
  • صفحه‌بندی
  • برش‌ها
  • مدیر کار

15) معماری اندروید

سه معماری معروف در دنیای اندروید که هر توسعه‌دهنده اندورید باید با آن‌ها آشنا باشد عبارت‌اند از:

  • MVVM (Model–View–ViewModel)
  • MVI (Model-View-Intent)
  •  (Model View Presenter) MVP

16) Firebase

FCM (Firebase Cloud Messaging) یا مبحث فایرباس نیز از اهمیت ویژه‌ای در توسعه اندروید برخوردار است و شامل موارد زیر است:

  • تجزیه‌وتحلیل
  • پیکربندی از راه دور
  • نمایه‌سازی یا ایندکس برنامه

17) تست واحد برنامه

تست واحد مبحث مهمی در توسعه نرم‌افزار به‌صورت کلی است که در اندروید شامل دو مورد زیر است:

  • تست واحد محلی
  • تست ابزار دقیق

توسعه‌دهندگان باید بتوانند تست واحد را انجام دهند.


18) امنیت برنامه

امنیت از مباحث مهم هر اپلیکیشنی است و شخص توسعه‌دهنده باید بتواند امنیت برنامه را به‌صورت کامل فراهم کند که این شامل موارد زیر است:

  • رمزگذاری / رمزگشایی
  • پروگارد (Proguard)

19) انتشار برنامه

در پایان یک توسعه‌دهنده اندورید باید به عنوان خروجی اپلیکشین خود را با پسوند APK بسازد که این شامل:

  • ساخت APK امضاشده
  • آپلود در فروشگاه اپلیکشین


20) تمرین و تمرین و تمرین

تمرین انسان را کامل می‌کند و این مسئله برای برنامه‌نویسی دوچندان اهمیت دارد. هیچ توسعه‌دهنده‌ای کامل نیست و این تمرین است که آن را کامل می‌کند.


سخن پایانی

برای تبدیل شدن به یک توسعه‌دهنده حرفه‌ای در اندروید باید راه پر پیچ‌ وخمی را طی کرد. در این میان استفاده از دوره‌های آموزشی مناسب از اهمیت بسیار بالایی برخوردار است. دوره آموزش از پایه تا پیشرفته اندروید مکتب خونه یکی از این دوره‌هایی به‌حساب می‌آید که می‌تواند کمک حال خوبی برای دوستداران این حوزه باشد. اگر به فکر یادگیری کدنویسی اندروید هستید، هم‌اکنون با ثبت‌نام در این دوره آموزش از پایته تا پیشرفته اندروید، قدم مهمی در این راستا برمی‌دارید.

poster
  
برگزار کننده:  مکتب‌خونه
  
زمان مورد نیاز برای گذارندن دوره:  65 ساعت
مجموع محتوای آموزشی:  22 ساعت ویدئو - 43 ساعت تمرین و پروژه
 (قابل دانلود می‌باشد)
مهلت دوره:  9 هفته
  
حد نصاب قبولی در دوره:  70 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد. 
organization-pic  گواهینامه این دوره توسط مکتب‌خونه ارائه می‌شود.
course-feature   گواهی‌نامه مکتب‌خونه course-feature   خدمات منتورینگ course-feature   پروژه محور course-feature   تمرین و آزمون course-feature   تالار گفتگو course-feature   تسهیل استخدام