290,000 تومان


میثم بابائی
میثم بابائی
Android , Kotlin , Java
دسته‌بندی‌ها
برنامه نویسی موبایل-kotlin
نظرات 1

لطفا جهت اطلاع از دوره های جدید و بروز رسانی دوره ها عضو کانال تلگرام باگتو با آدرس bugeto@ شوید .

بررسی اجمالی

  • فصل 3
  • قسمت 26
  • مدت زمان 04:17:19
  • سطح پیشرفته
  • وضعیت به اتمام رسیده
  • سورس کد دارد
  • نحوه مشاهده SpotPlayer
یکی از چالش‌هایی که هر برنامه‌نویس زمان طراحی اپلیکیشن‌های بزرگ با آن مواجه می‌شود پیچیده شدن کدهای نرم‌افزار است. همچنین مدیریت ساده بودن و خوانایی کد هم خیلی برای برنامه‌نویس مهمه یعنی در عین پیچیدگی،کدها باید خوانا و قابل‌گسترش باشند.منظور از پیچیدگی یعنی این که اپلیکیشن ما چندین فیچر بزرگ داشته باشد.

اگر دنبال یادگیری DependencyInjection هستید پس از اهمیت این موضع مطلع هستید. البته DI یک مبحث سخت به نظر می‌رسد ولی با استفاده از این دوره می‌توانید به‌راحتی DependencyInjection را یاد بگیرید.

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

در فصل اول این دوره تزریق وابستگی با استفاده از Hilt را آموزش میدهم .

  1. تزریق وابستگی باHilt

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

موقعی که یک قسمتِ نرم‌افزار برای تکمیل هدف مورد نظرش به منابع دیگر وابسته است، باید بداند که با کدام منابع ارتباط برقرار کند و آنها را کجا قرار دهد و چطوری با آنها ارتباط برقرار کند.

یکی از راه‌های ساختاردهی کد، این است که یک مکان برای هر منبع در نظر بگیریم. راه دیگر اینکه از تزریق وابستگی استفاده کنیم و یک قطعه کد خارجی مسئول مکان‌یابی منابع است.

در فصل دوم  تکنولوژی محبوب Coroutine را آموزش می‌دهم.

  1. استفاده ازCoroutine

برنامه‌نویسی ناهم‌زمان (Asynchronous)  در این نوع برنامه‌نویسی ما چندین عملیات را با هم شروع می‌کنیم و زمان اتمام این عملیات ها با هم متفاوت است و ممکن است با همان ترتیبی که شروع کردیم تمام نشوند.

برنامه‌نویسی هم‌زمان (Synchronous) چیست؟

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

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

برای برنامه‌نویسی ناهم‌زمان در اندروید از Coroutine استفاده می‌کنیم که انجام کارها رو خیلی برای ما راحت‌تر می‌کند و برای برنامه‌نویسی اندروید خیلی کاربردی است.

در فصل سوم یک پروژه سبک داریم که لیست اخبار را از سرور میگیرد و همچنین امکان جستجوی اخبار را هم دارد. در این پروژه از Hilt و Coroutine به همراه معماری MVVM و همچنین navigationComponent استفاده می‌کنیم.

در فصل سوم یک پروژه سبک داریم که لیست اخبار را از سرور میگیرد و همچنین امکان جستجوی اخبار را هم دارد. در این پروژه از Hilt و Coroutine به همراه معماری MVVM و همچنین navigationComponent استفاده می‌کنیم.

برای دریافت سورس پروژه در گیت هاب روی لینک زیر کلیک کنید.


دریافت سورس

 

آیا این دوره پشتیبانی هم دارد؟
اگر منظورتان از پشتیبانی پاسخ دادن به سوالات شخصی و موردی شما است، خیر! پشتیبانی ندارد! برای گرفتن مشاوره اختصاصی از باگتو، در سال حداقل لازم است چندصد میلیون تومان بپردازید.
البته مشکلات فنی خود را می توانید در قسمت باگ سایت ارسال نمایید، دیگر کاربران و یا پشتیبانی باگتو پاسخ سوال شما را ارسال می کنند.

اشتراک

برای ارسال نظر وارد حساب کاربری خود شوید
ورود به حساب کاربری ثبت نام




نظرات 1

  • عکس پروفایل mostafa ahmadi در سایت باگتو
  • |
  • ارسال شده توسط : mostafa ahmadi
  • |
  • زمان : 26روز ، پیش

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