اپلیکیشن اندرویدی فلشکارت آموزشی Concurrency and Thread Safety in Clean Code
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره Concurrency and Thread Safety in Clean Code
موضوع کلی: برنامه نویسی
موضوع میانی: کدنویسی تمیز (Clean Code)
📋 سرفصلهای دوره
- 1. مقدمه ای بر برنامه نویسی همروند
- 2. مقدمه ای بر کدنویسی تمیز
- 3. چرا همروندی و ایمنی نخ مهم هستند؟
- 4. مفاهیم اساسی همروندی
- 5. نخ ها (Threads) چیستند؟
- 6. مدیریت نخ ها
- 7. چرخه حیات نخ ها
- 8. حالت های نخ ها
- 9. روش های ایجاد نخ
- 10. پیاده سازی نخ ها در زبان های مختلف
- 11. مدیریت منابع مشترک
- 12. مسائل مربوط به منابع مشترک
- 13. شرایط رقابتی (Race Conditions)
- 14. بن بست (Deadlock)
- 15. قحطی (Starvation)
- 16. بازدارنده (Livelock)
- 17. قفل ها (Locks)
- 18. انواع قفل ها
- 19. قفل های اولیه (Basic Locks)
- 20. قفل های قابل بازگشت (Reentrant Locks)
- 21. قفل های همزمان (Synchronized Locks)
- 22. پیاده سازی قفل ها
- 23. مدیریت خطاهای قفل
- 24. دستورالعمل های کدنویسی تمیز برای قفل ها
- 25. قفل های شرطی (Condition Variables)
- 26. استفاده از قفل های شرطی
- 27. پیاده سازی الگوهای قفل شرطی
- 28. اعلام و انتظار (Signal and Wait)
- 29. دستورالعمل های کدنویسی تمیز برای قفل های شرطی
- 30. همگام سازی (Synchronization)
- 31. مفاهیم همگام سازی
- 32. انواع مکانیزم های همگام سازی
- 33. سِمِفورها (Semaphores)
- 34. محدود کردن دسترسی به منابع
- 35. پیاده سازی سِمِفورها
- 36. دستورالعمل های کدنویسی تمیز برای سِمِفورها
- 37. مانیتورها (Monitors)
- 38. الگوهای مانیتور
- 39. پیاده سازی مانیتورها
- 40. کلاس همزمان (Synchronized Classes)
- 41. دستورالعمل های کدنویسی تمیز برای مانیتورها
- 42. مجموعه های همزمان (Concurrent Collections)
- 43. مزایای استفاده از مجموعه های همزمان
- 44. انواع مجموعه های همزمان
- 45. لیست های همزمان (Concurrent Lists)
- 46. نقشه های همزمان (Concurrent Maps)
- 47. صف های همزمان (Concurrent Queues)
- 48. کتابخانه java.util.concurrent
- 49. کلاس ExecutorService
- 50. مدیریت Pool های نخ
- 51. تنظیم اندازه Pool
- 52. تنظیم انواع Pool
- 53. پیاده سازی ExecutorService
- 54. مدیریت چرخه حیات ExecutorService
- 55. دستورالعمل های کدنویسی تمیز برای ExecutorService
- 56. کلاس Future و CompletableFuture
- 57. عملیات ناهمگام
- 58. ترکیب Future ها
- 59. مدیریت خطا در CompletableFuture
- 60. دستورالعمل های کدنویسی تمیز برای Future و CompletableFuture
- 61. مسائل مربوط به ایمنی نخ (Thread Safety)
- 62. تعریف ایمنی نخ
- 63. نوشتن کلاس های ایمن برای نخ
- 64. روش های دستیابی به ایمنی نخ
- 65. استراتژی های ایمنی نخ
- 66. محدودیت (Immutability)
- 67. ارتباط محدودیت با ایمنی نخ
- 68. پیاده سازی اشیاء نامتغیر
- 69. نکات مهم در مورد محدودیت
- 70. ارتباط محدودیت با کدنویسی تمیز
- 71. الگوهای طراحی همروند (Concurrency Design Patterns)
- 72. الگوی فعال (Actor Model)
- 73. پیاده سازی الگوهای فعال
- 74. ارتباط الگوهای فعال با کدنویسی تمیز
- 75. الگوی تولید کننده-مصرف کننده (Producer-Consumer Pattern)
- 76. پیاده سازی الگوهای تولید کننده-مصرف کننده
- 77. دستورالعمل های کدنویسی تمیز برای تولید کننده-مصرف کننده
- 78. الگوی استراتژی (Strategy Pattern) در همروند
- 79. پیاده سازی الگوهای استراتژی در همروند
- 80. ارتباط الگوهای استراتژی با کدنویسی تمیز
- 81. الگوی همزمان کننده (Synchronization Patterns)
- 82. پیاده سازی الگوهای همزمان کننده
- 83. دستورالعمل های کدنویسی تمیز برای الگوهای همزمان کننده
- 84. الگوی ناظر (Observer Pattern) در همروند
- 85. پیاده سازی الگوهای ناظر در همروند
- 86. ارتباط الگوهای ناظر با کدنویسی تمیز
- 87. الگوی استخر منابع (Resource Pool Pattern)
- 88. پیاده سازی الگوهای استخر منابع
- 89. دستورالعمل های کدنویسی تمیز برای استخر منابع
- 90. ارزیابی و تست کد همروند
- 91. اهمیت تست در همروند
- 92. انواع تست های همروند
- 93. تست خودکار (Automated Testing)
- 94. تست واحد (Unit Testing)
- 95. تست ادغام (Integration Testing)
- 96. تست استرس (Stress Testing)
- 97. تست تحمل پذیری خطا (Fault Tolerance Testing)
- 98. ابزارهای تست همروند
- 99. روش های تشخیص مشکلات همروند
- 100. استفاده از ابزارهای اشکال زدایی (Debugging Tools)
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.