دوره Advanced Clean Code: Tackling Complexity همراه با فلشکارت آموزشی — ارائه روی فلش مموری
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره Advanced Clean Code: Tackling Complexity
موضوع کلی: برنامه نویسی
موضوع میانی: کدنویسی تمیز (Clean Code)
📋 سرفصلهای دوره
- 1. مقدمهای بر پیچیدگی در کدنویسی
- 2. چرا کد تمیز مهم است؟
- 3. اصول SOLID در عمل
- 4. اصل تک مسئولیتی (SRP) و کاربردهای آن
- 5. اصل باز-بسته (OCP) در طراحی نرمافزار
- 6. اصل جایگزینی لیسکوف (LSP) و ملاحظات آن
- 7. اصل جداسازی رابط (ISP) و نحوه پیادهسازی
- 8. اصل وارونگی وابستگی (DIP) و الگوهای مرتبط
- 9. نامگذاری صحیح متغیرها، توابع و کلاسها
- 10. اصول نامگذاری خوانا و معنادار
- 11. اجتناب از نامهای مبهم و مخفف
- 12. اهمیت استفاده از نامهای توصیفی
- 13. مدیریت طول نامها
- 14. قوانین نامگذاری برای انواع مختلف شناسهها
- 15. نوشتن توابع کوچک و با تمرکز
- 16. مفهوم تابع خالص (Pure Function)
- 17. مدیریت ورودی و خروجی توابع
- 18. کاهش تعداد پارامترهای توابع
- 19. توابع با تأثیر جانبی (Side Effects) و مدیریت آنها
- 20. توابع پرکاربرد و الگوهای بازگشتی
- 21. کدنویسی تمیز در مدیریت خطا
- 22. استثناها (Exceptions) در مقابل کدهای بازگشتی خطا
- 23. استفاده صحیح از Exception Handling
- 24. مدیریت استثناهای سفارشی
- 25. کد تمیز در مدیریت دادهها و ساختارها
- 26. استفاده از ساختارهای داده مناسب
- 27. اصول Aggregation و Composition
- 28. اجتناب از دادههای جهانی (Global Data)
- 29. کلاسهای داده (Data Classes) در مقابل کلاسهای رفتاری
- 30. توابع کمکی (Helper Functions) و کاربرد آنها
- 31. اصول تمیز در نوشتن کلاسها
- 32. اندازه کلاسها و وظایف آنها
- 33. کلاسهای کوچک و متمرکز
- 34. کاهش تعداد وابستگیهای کلاس
- 35. مراقب کلاسهای Big Ball of Mud باشید
- 36. اصول تمیز در نوشتن ماژولها
- 37. ارتباطات بین ماژولها
- 38. کاهش وابستگیهای متقابل (Coupling)
- 39. افزایش انسجام (Cohesion)
- 40. طراحی سطوح انتزاع (Layers)
- 41. مدیریت کامنتها: دوست یا دشمن کد تمیز؟
- 42. چه زمانی کامنت بنویسیم؟
- 43. کامنتهای توضیحدهنده در مقابل کامنتهای توجیه کننده
- 44. حذف کامنتهای زائد و منسوخ
- 45. کامنتهای فنی (Technical Comments)
- 46. استفاده از کامنتها برای مستندسازی
- 47. فاکتورگیری (Refactoring) برای حذف نیاز به کامنت
- 48. کد تمیز در تستنویسی (Unit Testing)
- 49. اصول نوشتن تستهای تمیز
- 50. تستهای خوانا و قابل فهم
- 51. تستهای قابل اعتماد و پایدار
- 52. پوشش تست (Test Coverage) و اهمیت آن
- 53. تستهای رگرسیون (Regression Tests)
- 54. اصول تستهای ادغام (Integration Tests)
- 55. تستهای End-to-End
- 56. اصول تمیز در مدیریت وابستگیها
- 57. دیزاین پترنهای مرتبط با مدیریت وابستگی
- 58. استفاده از Dependency Injection
- 59. الگوهای Factory و Builder
- 60. استفاده از Interface ها برای کاهش وابستگی
- 61. تکنیکهای Mocking و Stubbing
- 62. کد تمیز در مدیریت تغییرات
- 63. استراتژیهای مواجهه با پیچیدگی متغیر
- 64. کد تمیز برای قابلیت نگهداری (Maintainability)
- 65. کد تمیز برای قابلیت توسعه (Extensibility)
- 66. کد تمیز در مواجهه با Legacy Code
- 67. تکنیکهای ورود به Legacy Code
- 68. اصول تمیز در بازسازی Legacy Code
- 69. تکنیکهای Shadowing و Characterization Tests
- 70. استفاده از ابزارهای تحلیل کد (Static Analysis Tools)
- 71. اهمیت Linters و Formatters
- 72. تنظیمات استاندارد برای تحلیل کد
- 73. گزارشدهی و رفع مشکلات یافت شده
- 74. کد تمیز در تیمهای توسعه
- 75. اصول کدنویسی مشترک
- 76. بررسی کد (Code Review) موثر
- 77. استانداردهای کدنویسی تیمی
- 78. ابزارهای همکاری در کدنویسی
- 79. فرهنگ کد تمیز در سازمان
- 80. کد تمیز در معماری نرمافزار
- 81. الگوهای معماری تمیز (Clean Architecture)
- 82. مفهوم Domain Driven Design (DDD)
- 83. اصول Domain Driven Design
- 84. محدودههای (Bounded Contexts)
- 85. اکتورها (Aggregates) و موجودیتها (Entities)
- 86. مقادیر نهفته (Value Objects)
- 87. مدیریت تراکنشها در سیستمهای پیچیده
- 88. استفاده از صفهای پیام (Message Queues)
- 89. استراتژیهای Asynchronous Communication
- 90. کد تمیز در مواجهه با Big Data
- 91. اصول طراحی برای مقیاسپذیری (Scalability)
- 92. کد تمیز در سیستمهای توزیع شده (Distributed Systems)
- 93. ملاحظات Concurrency و Parallelism
- 94. مدیریت خطا در سیستمهای توزیع شده
- 95. اصول Fault Tolerance
- 96. کد تمیز و امنیت
- 97. نکات امنیتی در کدنویسی تمیز
- 98. اجتناب از آسیبپذیریهای رایج
- 99. استفاده از تکنیکهای رمزنگاری
- 100. کد تمیز و عملکرد (Performance)
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.