اپلیکیشن اندرویدی فلشکارت آموزشی هنر نوشتن کد انعطافپذیر: رویکردی گام به گام
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره هنر نوشتن کد انعطافپذیر: رویکردی گام به گام
موضوع کلی: مبانی برنامه نویسی ساخت یافته
موضوع میانی: اصول نوشتن کدهای با قابلیت ارتقاء آسان (Easy Upgrade Code)
📋 سرفصلهای دوره
- 1. درس ۱: مقدمهای بر کد انعطافپذیر
- 2. درس ۲: چرا انعطافپذیری کد اهمیت دارد؟
- 3. درس ۳: اصول SOLID برای کدنویسی تمیز
- 4. درس ۴: اصل مسئولیت واحد (SRP)
- 5. درس ۵: اصل باز-بسته (OCP)
- 6. درس ۶: اصل جایگزینی لیسکوف (LSP)
- 7. درس ۷: اصل تفکیک رابط (ISP)
- 8. درس ۸: اصل وارونگی وابستگی (DIP)
- 9. درس ۹: الگوهای طراحی: معرفی و دستهبندی
- 10. درس ۱۰: الگوی کارخانه (Factory Method)
- 11. درس ۱۱: الگوی کارخانه انتزاعی (Abstract Factory)
- 12. درس ۱۲: الگوی نمونهسازی (Prototype)
- 13. درس ۱۳: الگوی نمونهسازی تکسازه (Singleton)
- 14. درس ۱۴: الگوی سازنده (Builder)
- 15. درس ۱۵: الگوی آداپتور (Adapter)
- 16. درس ۱۶: الگوی پل (Bridge)
- 17. درس ۱۷: الگوی دکوراتور (Decorator)
- 18. درس ۱۸: الگوی نما (Facade)
- 19. درس ۱۹: الگوی مشتری (Client)
- 20. درس ۲۰: الگوی کامپوزیت (Composite)
- 21. درس ۲۱: الگوی سنجاقک (Flyweight)
- 22. درس ۲۲: الگوی دادهای (Data Mapper)
- 23. درس ۲۳: الگوی وارث (Proxy)
- 24. درس ۲۴: الگوی زنجیره مسئولیت (Chain of Responsibility)
- 25. درس ۲۵: الگوی فرمان (Command)
- 26. درس ۲۶: الگوی مفسر (Interpreter)
- 27. درس ۲۷: الگوی میانجی (Mediator)
- 28. درس ۲۸: الگوی ناظر (Observer)
- 29. درس ۲۹: الگوی حالت (State)
- 30. درس ۳۰: الگوی استراتژی (Strategy)
- 31. درس ۳۱: الگوی تمپلیت متد (Template Method)
- 32. درس ۳۲: معرفی انواع وابستگیها
- 33. درس ۳۳: وابستگیهای سفت و سخت و مشکلات آن
- 34. درس ۳۴: وابستگیهای سست و مزایای آن
- 35. درس ۳۵: تزریق وابستگی (Dependency Injection)
- 36. درس ۳۶: تزریق وابستگی از طریق سازنده
- 37. درس ۳۷: تزریق وابستگی از طریق خصوصیت (Property)
- 38. درس ۳۸: تزریق وابستگی از طریق متد
- 39. درس ۳۹: کانتینرهای وارونگی وابستگی (IoC Containers)
- 40. درس ۴۰: آشنایی با Unity (در صورت امکان)
- 41. درس ۴۱: آشنایی با Autofac (در صورت امکان)
- 42. درس ۴۲: آشنایی با Ninject (در صورت امکان)
- 43. درس ۴۳: تستپذیری کد: اهمیت و راهکارها
- 44. درس ۴۴: تست واحد (Unit Testing)
- 45. درس ۴۵: چارچوبهای تست واحد (مانند NUnit, xUnit)
- 46. درس ۴۶: نوشتن تستهای واحد مؤثر
- 47. درس ۴۷: Mocking و Stubbing در تست واحد
- 48. درس ۴۸: چارچوبهای Mocking (مانند Moq, NSubstitute)
- 49. درس ۴۹: تست ادغام (Integration Testing)
- 50. درس ۵۰: Refactoring: بازسازی کد بدون تغییر رفتار
- 51. درس ۵۱: چرا Refactoring ضروری است؟
- 52. درس ۵۲: تکنیکهای رایج Refactoring
- 53. درس ۵۳: Refactoring برای بهبود خوانایی
- 54. درس ۵۴: Refactoring برای کاهش پیچیدگی
- 55. درس ۵۵: Refactoring برای افزایش ماژولاریتی
- 56. درس ۵۶: Refactoring برای آمادهسازی برای الگوهای طراحی
- 57. درس ۵۷: مدیریت خطا و استثنا در کد انعطافپذیر
- 58. درس ۵۸: اصول مدیریت خطای صحیح
- 59. درس ۵۹: استفاده از استثنائات سفارشی
- 60. درس ۶۰: جلوگیری از Catch کردن عمومی استثنائات
- 61. درس ۶۱: طراحی APIهای انعطافپذیر
- 62. درس ۶۲: اصول طراحی API تمیز
- 63. درس ۶۳: نسخهبندی API
- 64. درس ۶۴: استفاده از RESTful APIها
- 65. درس ۶۵: مستندسازی API
- 66. درس ۶۶: کاهش وابستگیهای خارجی
- 67. درس ۶۷: ایزوله کردن وابستگیها
- 68. درس ۶۸: استفاده از اینترفیسها برای پوشاندن وابستگیها
- 69. درس ۶۹: برنامهنویسی واکنشی (Reactive Programming): مقدمه
- 70. درس ۷۰: مفاهیم اصلی برنامهنویسی واکنشی (Observable, Observer, Subscription)
- 71. درس ۷۱: استفاده از Rx.NET (در صورت امکان)
- 72. درس ۷۲: مزایای برنامهنویسی واکنشی در انعطافپذیری
- 73. درس ۷۳: کدنویسی ناهمگام (Asynchronous Programming)
- 74. درس ۷۴: Task-based Asynchronous Pattern (TAP)
- 75. درس ۷۵: Async/Await در C#
- 76. درس ۷۶: مدیریت Threadها و Thread Pool
- 77. درس ۷۷: جلوگیری از Deadlock در کد ناهمگام
- 78. درس ۷۸: الگوهای طراحی برای موازیسازی
- 79. درس ۷۹: الگوی Task Parallel Library (TPL)
- 80. درس ۸۰: مدیریت تغییرات در طول زمان
- 81. درس ۸۱: طراحی برای قابلیت تکامل
- 82. درس ۸۲: اصول YAGNI (You Ain't Gonna Need It)
- 83. درس ۸۳: اجتناب از پیشبینی بیش از حد
- 84. درس ۸۴: استفاده از تکنیکهای کدنویسی اکتشافی
- 85. درس ۸۵: معماری میکروسرویس و انعطافپذیری
- 86. درس ۸۶: اصول معماری میکروسرویس
- 87. درس ۸۷: مزایای میکروسرویس برای انعطافپذیری
- 88. درس ۸۸: چالشهای میکروسرویس
- 89. درس ۸۹: برنامهنویسی با نیت (Intent-Driven Programming)
- 90. درس ۹۰: خودکارسازی فرآیندهای توسعه
- 91. درس ۹۱: Continuous Integration (CI)
- 92. درس ۹۲: Continuous Delivery/Deployment (CD)
- 93. درس ۹۳: ابزارهای CI/CD (مانند Jenkins, GitLab CI)
- 94. درس ۹۴: مدیریت پیکربندی (Configuration Management)
- 95. درس ۹۵: طراحی برای قابلیت تنظیم
- 96. درس ۹۶: استفاده از فایلهای پیکربندی
- 97. درس ۹۷: مدیریت Secretها
- 98. درس ۹۸: کد انعطافپذیر و تیمهای توزیعشده
- 99. درس ۹۹: اشتراکگذاری دانش و کد
- 100. درس ۱۰۰: جمعبندی و گامهای بعدی
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.