دوره اصول SOLID برای توسعهدهندگان مدرن همراه با فلشکارت آموزشی — ارائه روی فلش مموری
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره اصول SOLID برای توسعهدهندگان مدرن
موضوع کلی: برنامه نویسی
موضوع میانی: اصول SOLID
📋 سرفصلهای دوره
- 1. مبانی برنامه نویسی شی گرا (OOP)
- 2. مفهوم کلاس و شی در OOP
- 3. وراثت و انواع آن
- 4. چند ریختی (Polymorphism)
- 5. انتزاع (Abstraction)
- 6. Encapsulation (کپسوله سازی)
- 7. معرفی اصول SOLID
- 8. تاریخچه و اهمیت اصول SOLID
- 9. مزایای استفاده از اصول SOLID
- 10. معایب عدم رعایت اصول SOLID
- 11. اصل اول SOLID: اصل تک مسئولیتی (SRP)
- 12. تعریف اصل تک مسئولیتی
- 13. چرا اصل تک مسئولیتی مهم است؟
- 14. مثال نقض اصل تک مسئولیتی
- 15. راه حل های رعایت اصل تک مسئولیتی
- 16. مسئولیت پذیری در کلاس ها و متدها
- 17. اجتناب از کلاس های God
- 18. اصل دوم SOLID: اصل باز/بسته (OCP)
- 19. تعریف اصل باز/بسته
- 20. مزایای استفاده از اصل باز/بسته
- 21. نقض اصل باز/بسته با استفاده از شرط ها
- 22. پیاده سازی OCP با استفاده از وراثت
- 23. پیاده سازی OCP با استفاده از Interfaceها
- 24. استفاده از Abstract Classها برای OCP
- 25. اصل سوم SOLID: اصل جانشینی لیسکوف (LSP)
- 26. تعریف اصل جانشینی لیسکوف
- 27. اهمیت اصل جانشینی لیسکوف
- 28. مثال نقض اصل جانشینی لیسکوف
- 29. جلوگیری از ایجاد استثناهای غیرمنتظره در زیرکلاس ها
- 30. طراحی قراردادها در وراثت
- 31. اصل چهارم SOLID: اصل تفکیک اینترفیس (ISP)
- 32. تعریف اصل تفکیک اینترفیس
- 33. مشکلات اینترفیس های بزرگ و bloated
- 34. ایجاد اینترفیس های کوچکتر و هدفمند
- 35. استفاده از Multiple Inheritance (چند ارثی)
- 36. نقش Interface ها در Dependency Inversion
- 37. اصل پنجم SOLID: اصل وارونگی وابستگی (DIP)
- 38. تعریف اصل وارونگی وابستگی
- 39. وابستگی به انتزاع (Abstraction) به جای وابستگی به جزئیات (Implementation)
- 40. Dependency Injection (تزریق وابستگی)
- 41. انواع تزریق وابستگی (Constructor Injection, Setter Injection, Interface Injection)
- 42. Container های IoC (Inversion of Control)
- 43. استفاده از Containerها برای مدیریت وابستگی ها
- 44. تفاوت بین Dependency Injection و Service Locator
- 45. Refactoring و اصول SOLID
- 46. شناسایی کد smell ها
- 47. استفاده از Refactoring Techniques برای رعایت SOLID
- 48. Extract Class Refactoring
- 49. Move Method Refactoring
- 50. Replace Conditional with Polymorphism Refactoring
- 51. Introduce Parameter Object Refactoring
- 52. Introduce Factory Refactoring
- 53. پیاده سازی SRP در یک پروژه نمونه
- 54. پیاده سازی OCP در یک پروژه نمونه
- 55. پیاده سازی LSP در یک پروژه نمونه
- 56. پیاده سازی ISP در یک پروژه نمونه
- 57. پیاده سازی DIP در یک پروژه نمونه
- 58. ترکیب اصول SOLID با الگوهای طراحی (Design Patterns)
- 59. رابطه بین SOLID و Factory Pattern
- 60. رابطه بین SOLID و Strategy Pattern
- 61. رابطه بین SOLID و Template Method Pattern
- 62. رابطه بین SOLID و Observer Pattern
- 63. رابطه بین SOLID و Decorator Pattern
- 64. تست پذیری و اصول SOLID
- 65. نوشتن Unit Test های بهتر با SOLID
- 66. Mocking و Stubbing در تست ها
- 67. استفاده از فریم ورک های تست
- 68. Continuous Integration و Continuous Delivery (CI/CD) با SOLID
- 69. SOLID و معماری نرم افزار
- 70. معماری Clean
- 71. معماری Hexagonal
- 72. معماری Onion
- 73. Microservices و SOLID
- 74. SOLID در زبان های برنامه نویسی مختلف (Java, C#, Python, JavaScript)
- 75. SOLID در JavaScript
- 76. SOLID در Python
- 77. SOLID در C#
- 78. SOLID در Java
- 79. اشتباهات رایج در پیاده سازی SOLID
- 80. over-engineering
- 81. استفاده نادرست از وراثت
- 82. ایجاد اینترفیس های غیر ضروری
- 83. تکنیک های پیشرفته SOLID
- 84. Composable Architecture
- 85. Event Sourcing
- 86. CQRS (Command Query Responsibility Segregation)
- 87. SOLID و DevOps
- 88. Infrastructure as Code (IaC)
- 89. Monitoring و Logging
- 90. مقایسه SOLID با سایر اصول طراحی نرم افزار (DRY, KISS, YAGNI)
- 91. مفاهیم DRY (Don't Repeat Yourself)
- 92. مفاهیم KISS (Keep It Simple, Stupid)
- 93. مفاهیم YAGNI (You Ain't Gonna Need It)
- 94. Case Study: پیاده سازی SOLID در یک پروژه واقعی
- 95. بررسی یک پروژه Open Source با رعایت اصول SOLID
- 96. چالش ها و راه حل ها در پیاده سازی SOLID در پروژه های بزرگ
- 97. SOLID و legacy code
- 98. استراتژی های بهبود کد های قدیمی با SOLID
- 99. ابزارهای کمک کننده به رعایت SOLID
- 100. Linter ها و Static Analyzers
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.