اپلیکیشن اندرویدی فلشکارت آموزشی ابزارها و تکنیکهای خودکار برای کدنویسی تمیز
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره ابزارها و تکنیکهای خودکار برای کدنویسی تمیز
موضوع کلی: برنامه نویسی
موضوع میانی: کدنویسی تمیز (Clean Code)
📋 سرفصلهای دوره
- 1. مقدمهای بر کدنویسی تمیز و اهمیت آن
- 2. هزینههای بلندمدت کدهای کثیف (بدهی فنی)
- 3. قانون پسر پیشاهنگ: کد را بهتر از چیزی که بود تحویل بده
- 4. اصول نامگذاری معنادار و قابل جستجو
- 5. توابع: اصل تکمسئولیتی و کوتاهنویسی
- 6. کاربرد صحیح کامنتها: کد باید خود معرف باشد
- 7. قالببندی کد و اهمیت یکپارچگی بصری
- 8. مدیریت خطا و استثناها به روشی تمیز
- 9. مرزها: جداسازی کدهای شخص ثالث
- 10. اصل عدم تکرار کد (DRY)
- 11. اصول سادگی: KISS و YAGNI
- 12. معرفی اصول SOLID برای طراحی شیءگرا
- 13. اصل تکمسئولیتی (SRP)
- 14. اصل باز/بسته (OCP)
- 15. اصل جایگزینی لیسکوف (LSP)
- 16. اصل تفکیک اینترفیس (ISP)
- 17. اصل وارونگی وابستگی (DIP)
- 18. مقدمهای بر تحلیل استاتیک کد (Static Code Analysis)
- 19. لینتر (Linter) چیست و چگونه کار میکند؟
- 20. انتخاب لینتر مناسب برای زبان و پروژه شما
- 21. پیکربندی ESLint برای پروژههای جاوااسکریپت و تایپاسکریپت
- 22. تنظیم قوانین سفارشی و اشتراکگذاری تنظیمات ESLint
- 23. لینترهای پایتون: Pylint، Flake8 و Mypy
- 24. پیکربندی Flake8 برای کنترل کیفیت کد پایتون
- 25. لینترهای جاوا: Checkstyle و PMD
- 26. استفاده از SonarLint در محیط توسعه (IDE)
- 27. تحلیلگرهای Roslyn برای کنترل کیفیت کد #C
- 28. استفاده از Stylelint برای CSS، SCSS و Less
- 29. ادغام لینترها با محیطهای توسعه (VS Code, JetBrains IDEs)
- 30. رفع خودکار خطاهای گزارششده توسط لینترها
- 31. نادیده گرفتن قوانین لینتر برای موارد خاص
- 32. اهمیت قالببندی یکپارچه کد در تیم
- 33. فرمتکننده خودکار (Auto-Formatter) چیست؟
- 34. معرفی ابزار Prettier و فلسفه آن
- 35. پیکربندی Prettier برای پروژههای مختلف
- 36. ادغام Prettier با ESLint برای جلوگیری از تداخل
- 37. فرمتبندی خودکار کد پایتون با ابزار Black
- 38. فرمتبندی خودکار کد Go با gofmt
- 39. استفاده از فرمتکنندههای داخلی IDE
- 40. تنظیم فرمت خودکار هنگام ذخیرهسازی فایل (Format on Save)
- 41. کد تمیز، کدی قابل تست است
- 42. مقدمهای بر تست واحد (Unit Testing)
- 43. توسعه تستمحور (TDD) به عنوان یک تکنیک کدنویسی تمیز
- 44. پوشش کد (Code Coverage) چیست و چرا مهم است؟
- 45. ابزارهای اندازهگیری پوشش کد (مانند Istanbul, JaCoCo)
- 46. تعیین حداقل درصد پوشش کد به عنوان یک استاندارد کیفی
- 47. درک مفهوم پیچیدگی سایکلوماتیک (Cyclomatic Complexity)
- 48. ابزارهای سنجش خودکار پیچیدگی کد
- 49. شاخص قابلیت نگهداری (Maintainability Index)
- 50. مقدمهای بر تست جهش (Mutation Testing)
- 51. بهبود کیفیت تستها با استفاده از تست جهش
- 52. ریفکتورینگ چیست و چرا به ابزارهای خودکار نیاز داریم؟
- 53. ریفکتورینگ امن با کمک ابزارهای IDE
- 54. تکنیکهای خودکار ریفکتورینگ: تغییر نام (Rename)
- 55. تکنیکهای خودکار ریفکتورینگ: استخراج متد/تابع (Extract Method)
- 56. تکنیکهای خودکار ریفکتورینگ: استخراج متغیر/ثابت (Extract Variable)
- 57. تکنیکهای خودکار ریفکتورینگ: درونخطی کردن (Inline)
- 58. تکنیکهای خودکار ریفکتورینگ: تغییر امضای متد (Change Signature)
- 59. مقدمهای بر Codemods برای ریفکتورینگ در مقیاس بزرگ
- 60. مفهوم "Shift Left": شناسایی زودهنگام خطاها در چرخه توسعه
- 61. معرفی Git Hooks و کاربرد آن در کنترل کیفیت
- 62. استفاده از Pre-commit Hooks برای اجرای خودکار لینتر و فرمتکننده
- 63. پیکربندی ابزارهایی مانند Husky و lint-staged
- 64. مقدمهای بر یکپارچهسازی مداوم (Continuous Integration)
- 65. راهاندازی پایپلاین CI برای کنترل کیفیت کد
- 66. اجرای خودکار لینترها در پایپلاین CI
- 67. بررسی فرمت کد در پایپلاین CI و متوقف کردن بیلد
- 68. اجرای خودکار تستهای واحد در پایپلاین CI
- 69. گزارشگیری پوشش کد در CI و نمایش نتایج
- 70. استفاده از GitHub Actions برای خودکارسازی بررسیهای کیفیت
- 71. استفاده از GitLab CI/CD برای کنترل کیفیت کد
- 72. دروازه کیفیت (Quality Gate) چیست؟
- 73. معرفی SonarQube به عنوان پلتفرم مدیریت کیفیت کد
- 74. پیکربندی دروازه کیفیت در SonarQube
- 75. متوقف کردن بیلد در صورت عدم رعایت استانداردهای کیفی
- 76. ادغام گزارشهای کیفیت در Pull Request ها
- 77. ابزارهای بازبینی خودکار کد (Automated Code Review)
- 78. مقدمهای بر تحلیل امنیتی استاتیک اپلیکیشن (SAST)
- 79. استفاده از ابزارهای SAST در پایپلاین CI
- 80. اسکن خودکار وابستگیها (Dependencies) برای یافتن آسیبپذیریها
- 81. شناسایی و مدیریت خودکار Code Smells
- 82. شناسایی کدهای تکراری (Duplicated Code) با ابزارهای خودکار
- 83. لینتینگ معماری: کنترل وابستگیها بین ماژولها
- 84. ابزارهای بصریسازی ساختار و وابستگیهای کد
- 85. الزامی کردن قواعد نامگذاری به صورت خودکار
- 86. تولید خودکار مستندات از کد (مانند JSDoc, Sphinx)
- 87. استفاده از فایل CODEOWNERS برای تعیین مالکیت کد
- 88. اندازهگیری و ردیابی بدهی فنی به صورت خودکار
- 89. ایجاد فرهنگ کدنویسی تمیز در تیم
- 90. نقش بازبینی کد (Code Review) در ترویج کد تمیز
- 91. برنامهنویسی دونفره (Pair Programming) به عنوان ابزاری برای کیفیت
- 92. نظریه پنجرههای شکسته در مهندسی نرمافزار
- 93. استانداردسازی ابزارها و تنظیمات در کل تیم
- 94. بهبود مداوم فرآیندها و ابزارهای کنترل کیفیت
- 95. جمعبندی: ساخت یک سیستم خودکار جامع برای کدنویسی تمیز
- 96. **تستنویسی خودکار: از TDD تا BDD برای کدهای تمیز و قابل اعتماد**
- 97. **استفاده از Linters و Code Analysis Tools برای شناسایی و رفع مشکلات کد**
- 98. **Refactoring: تکنیکها و ابزارهای خودکار برای بهبود ساختار کد بدون تغییر رفتار**
- 99. **Git Hooks: اتوماتیک کردن بررسی کد قبل از Commit برای حفظ کیفیت کد**
- 100. **ساخت pipelineهای CI/CD برای اطمینان از کیفیت و تمیزی کد در طول چرخه توسعه**
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.