اپلیکیشن اندرویدی فلشکارت آموزشی یادگیری عمیق Kotlin Coroutines برای توسعه برنامههای کارآمد
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره یادگیری عمیق Kotlin Coroutines برای توسعه برنامههای کارآمد
موضوع کلی: توسعه نرمافزار
موضوع میانی: برنامه نویسی همزمان و ناهمزمان
📋 سرفصلهای دوره
- 1. مبانی همزمانی در برنامهنویسی
- 2. مقدمهای بر اجرای ناهمزمان
- 3. معرفی Kotlin Coroutines
- 4. مزایای استفاده از Coroutines
- 5. ساختار اصلی Coroutines
- 6. Scaffold و Scope در Coroutines
- 7. اجرای Coroutines به صورت همزمان
- 8. اجرای Coroutines به صورت ناهمزمان
- 9. مدیریت زمانبندی اجرای Coroutines
- 10. Coroutines در مقابل Threadها
- 11. مقایسه عملکرد Coroutines و Threadها
- 12. مفهوم Dispatcher و انواع آن
- 13. Dispatcher.Main و اجرای رابط کاربری
- 14. Dispatcher.IO برای عملیات ورودی/خروجی
- 15. Dispatcher.Default برای محاسبات سنگین
- 16. Dispatcher.Unconfined و رفتارش
- 17. تعریف Coroutine Builder
- 18. `launch` برای عملیات بدون بازگشت مقدار
- 19. `async` برای عملیات با بازگشت مقدار
- 20. `withContext` برای تغییر Dispatcher
- 21. مفهوم `suspend`
- 22. توابع `suspend` و نحوه فراخوانی آنها
- 23. ساختار `coroutineScope`
- 24. اهمیت `coroutineScope` در مدیریت خطا
- 25. ساختار `supervisorScope`
- 26. مدیریت خطا در `supervisorScope`
- 27. جلوگیری از انشعاب خطا (Cancellation)
- 28. نحوه لغو کردن Coroutines
- 29. استفاده از `Job` برای مدیریت Coroutines
- 30. ارتباط بین Coroutines از طریق `Job`
- 31. مفهوم `CancellationException`
- 32. مدیریت استثناها در Coroutines
- 33. استفاده از `try-catch` در Coroutines
- 34. استفاده از `CoroutineExceptionHandler`
- 35. مفهوم `Flow` در Kotlin
- 36. معرفی `Flow` برای دادههای جریانی
- 37. ساخت `Flow` با `flow builder`
- 38. کالکتورها در `Flow`
- 39. `collect` برای دریافت مقادیر Flow
- 40. `launchIn` برای اجرای Flow در Scope
- 41. `onEach` برای پردازش مقادیر
- 42. `map` برای تبدیل مقادیر Flow
- 43. `filter` برای گزینش مقادیر Flow
- 44. `take` و `drop` برای محدود کردن Flow
- 45. `combine` برای ترکیب چند Flow
- 46. `zip` برای ترکیب همزمان چند Flow
- 47. `flowOn` برای تغییر Dispatcher در Flow
- 48. `catch` برای مدیریت خطا در Flow
- 49. `retry` برای تلاش مجدد در Flow
- 50. `buffer` برای مدیریت بافر در Flow
- 51. `conflate` برای ادغام مقادیر
- 52. `collectLatest` برای دریافت آخرین مقدار
- 53. مفهوم `StateFlow`
- 54. کاربرد `StateFlow` برای دادههای قابل مشاهده
- 55. مفهوم `SharedFlow`
- 56. کاربرد `SharedFlow` برای انتشار رویدادها
- 57. `Channel` برای ارتباط بین Coroutines
- 58. `produce` برای ساخت Channel
- 59. `actor` برای مدل Actor
- 60. همزمانی در برنامههای اندروید
- 61. استفاده از Coroutines در ViewModel
- 62. `viewModelScope` و `lifecycleScope`
- 63. مدیریت عملیات ناهمزمان در UI
- 64. بهینهسازی مصرف منابع با Coroutines
- 65. استفاده از Coroutines در شبکهسازی
- 66. مدیریت خطاهای شبکه با Coroutines
- 67. کاربرد Coroutines در پایگاه داده
- 68. همزمانی در معماری MVVM
- 69. استفاده از Coroutines در معماری MVI
- 70. مقدمهای بر تست Coroutines
- 71. تست توابع `suspend`
- 72. تست Dispatcherها
- 73. استفاده از `runTest` در تست
- 74. مدیریت زمان در تست Coroutines
- 75. ملاحظات امنیتی در Coroutines
- 76. جلوگیری از نشت حافظه (Memory Leaks)
- 77. استفاده از `coroutineContext`
- 78. مفهوم `ThreadLocal` در Coroutines
- 79. کاربرد `ThreadLocal` با `asContextElement`
- 80. بهینهسازی معماری برنامه با Coroutines
- 81. الگوهای طراحی با Coroutines
- 82. پیادهسازی صف انتظار با Coroutines
- 83. مدیریت وظایف پسزمینه با Coroutines
- 84. همزمانی در برنامههای سمت سرور
- 85. استفاده از Coroutines در Ktor
- 86. مدیریت اتصالات همزمان
- 87. کاربرد Coroutines در پردازش دادههای بزرگ
- 88. مقایسه با کتابخانههای همزمانی دیگر
- 89. مباحث پیشرفته در Coroutines
- 90. بهینهسازیهای عملکردی Coroutines
- 91. ملاحظات مربوط به نسخههای جدید Kotlin
- 92. منابع بیشتر برای یادگیری Coroutines
- 93. کاربرد Coroutines در یادگیری ماشین
- 94. مقدمهای بر یادگیری عمیق
- 95. شبکههای عصبی کانولوشنال
- 96. شبکههای عصبی بازگشتی
- 97. آموزش مدلهای یادگیری عمیق
- 98. ارزیابی مدلها
- 99. کاربرد Coroutines در پردازش تصویر
- 100. مدلهای زبانی بزرگ
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.