دوره رهایی از بدهی فنی (Technical Debt) با کدنویسی تمیز همراه با فلشکارت آموزشی — ارائه روی فلش مموری
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره رهایی از بدهی فنی (Technical Debt) با کدنویسی تمیز
موضوع کلی: برنامه نویسی
موضوع میانی: کدنویسی تمیز (Clean Code)
📋 سرفصلهای دوره
- 1. مقدمهای بر بدهی فنی و کدنویسی تمیز
- 2. چرا بدهی فنی ایجاد میشود؟
- 3. تاثیرات منفی بدهی فنی بر پروژه
- 4. مزایای کدنویسی تمیز
- 5. ارتباط عمیق بین کدنویسی تمیز و کاهش بدهی فنی
- 6. اولین گام: درک هدف کد
- 7. نامگذاری معنادار متغیرها
- 8. نامگذاری معنادار توابع
- 9. نامگذاری معنادار کلاسها
- 10. انتخاب نامهای توصیفی و غیر مبهم
- 11. قوانین نامگذاری در زبانهای مختلف (نمونه)
- 12. تکنیکهای نامگذاری (Camel Case, Snake Case, Pascal Case)
- 13. اجتناب از نامهای مخفف یا گیجکننده
- 14. انتخاب نامهایی که قصد واقعی را بیان کنند
- 15. اهمیت خوانایی نامها
- 16. چرا توابع کوچک مهم هستند؟
- 17. قانون تک مسئولیتی (SRP) برای توابع
- 18. کاهش پیچیدگی توابع
- 19. تکنیک تقسیم توابع بزرگ
- 20. تابع به عنوان واحد قابل فهم
- 21. نوشتن توابع قابل تست
- 22. تابع با ورودی و خروجی مشخص
- 23. اجتناب از اثرات جانبی (Side Effects) در توابع
- 24. انتخاب نامهای افعال برای توابع
- 25. تشخیص توابع طولانی و پیچیده
- 26. اصل KISS (Keep It Simple, Stupid)
- 27. اصل DRY (Don't Repeat Yourself)
- 28. شناسایی و حذف کدهای تکراری
- 29. تکنیکهای استخراج کد تکراری به تابع
- 30. اهمیت انتزاع (Abstraction)
- 31. کلاسها به عنوان واحدهای معنادار
- 32. قانون تک مسئولیتی (SRP) برای کلاسها
- 33. حفظ چسبندگی (Cohesion) در کلاسها
- 34. کاهش وابستگی (Coupling) بین کلاسها
- 35. طراحی کلاسهای کوچک و متمرکز
- 36. استفاده از الگوهای طراحی (Design Patterns) برای سازماندهی کلاسها
- 37. اجتناب از کلاسهای بزرگ و غولپیکر (God Objects)
- 38. ارتباط بین کلاسها و نحوه تعامل آنها
- 39. کلاسهای داده (Data Classes) در مقابل کلاسهای رفتار (Behavior Classes)
- 40. اهمیت وضوح در طراحی کلاس
- 41. مدیریت خطاها و استثناها (Exceptions)
- 42. مفهوم خطا و استثنا
- 43. مدیریت صحیح استثناها
- 44. پراکندن استثناها (Exception Propagation)
- 45. نوشتن کدهای استثنایی (Exception Handling) تمیز
- 46. استفاده از بلوکهای try-catch-finally به صورت بهینه
- 47. تفاوت بین خطا و استثنا
- 48. شناسایی سناریوهای استثنایی
- 49. نوشتن پیامهای خطای مفید
- 50. انتخاب نوع استثنای مناسب
- 51. اجتناب از نادیده گرفتن استثناها
- 52. مفهوم کامنت (Comment) و هدف آن
- 53. کامنتهای توضیحی و کامنتهای توجیهی
- 54. چه زمانی کامنت بنویسیم؟
- 55. چه زمانی از کامنت پرهیز کنیم؟
- 56. کامنتهای خود-توضیحگر (Self-Documenting Code)
- 57. حذف کامنتهای غیر ضروری یا قدیمی
- 58. کامنتگذاری برای اهداف پیچیده یا ناگهانی
- 59. اهمیت نگهداری کامنتها
- 60. استانداردهای کامنتگذاری
- 61. قوانین قالببندی کد (Code Formatting)
- 62. اهمیت یکسانسازی قالببندی
- 63. استفاده از ابزارهای فرمتکننده خودکار (Linters, Formatters)
- 64. تکنیکهای تورفتگی (Indentation)
- 65. استفاده از فضای سفید (Whitespace) برای خوانایی
- 66. قالببندی شرطها و حلقهها
- 67. قالببندی توابع و بلوکهای کد
- 68. استانداردهای قالببندی در تیمها
- 69. تکنیکهای refactoring اساسی
- 70. شناخت کد نیازمند refactoring
- 71. اولین گامهای refactoring
- 72. استخراج تابع (Extract Method)
- 73. استخراج متغیر (Extract Variable)
- 74. جابجایی کد (Move Method/Field)
- 75. تغییر نام (Rename)
- 76. قوانین طلایی refactoring
- 77. اهمیت refactoring مستمر
- 78. شناسایی بدهی فنی در کد
- 79. تکنیکهای شناسایی بدهی فنی
- 80. ابزارهای تحلیل کد ایستا (Static Code Analysis Tools)
- 81. Metric های کد (Code Metrics)
- 82. کد تکراری به عنوان نشانه بدهی فنی
- 83. کلاسهای بزرگ به عنوان نشانه بدهی فنی
- 84. توابع طولانی به عنوان نشانه بدهی فنی
- 85. وابستگیهای پیچیده به عنوان نشانه بدهی فنی
- 86. مستندات قدیمی یا ناقص به عنوان نشانه بدهی فنی
- 87. تستهای ناکافی یا ضعیف به عنوان نشانه بدهی فنی
- 88. فهم ساختار کد (Code Structure)
- 89. پیچیدگی سیکلوماتیک (Cyclomatic Complexity)
- 90. کلاسهای بزرگ (Large Classes)
- 91. روشهای طولانی (Long Methods)
- 92. هزینه بدهی فنی
- 93. اهمیت refactoring در چارچوب Agile
- 94. مدیریت بدهی فنی در طول چرخه عمر پروژه
- 95. استراتژیهای کاهش تدریجی بدهی فنی
- 96. اولویتبندی بدهیهای فنی
- 97. نقش تیم در کاهش بدهی فنی
- 98. فرهنگ کدنویسی تمیز در تیم
- 99. ایجاد یک گیت (Gate) برای جلوگیری از افزایش بدهی فنی
- 100. تستنویسی (Writing Tests)
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.