اپلیکیشن اندرویدی فلشکارت آموزشی Clean Code for Web Development (Frontend & Backend)
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره Clean Code for Web Development (Frontend & Backend)
موضوع کلی: برنامه نویسی
موضوع میانی: کدنویسی تمیز (Clean Code)
📋 سرفصلهای دوره
- 1. مقدمهای بر کدنویسی تمیز
- 2. چرا کدنویسی تمیز مهم است؟
- 3. اهمیت خوانایی کد
- 4. اهمیت نگهداری کد
- 5. اهمیت همکاری تیمی
- 6. مفهوم "کد خود-مستند"
- 7. اصول SOLID در کدنویسی شیءگرا
- 8. اصل تک وظیفهای (Single Responsibility Principle)
- 9. اصل باز-بسته (Open/Closed Principle)
- 10. اصل جایگزینی لیسکوف (Liskov Substitution Principle)
- 11. اصل جداسازی واسط (Interface Segregation Principle)
- 12. اصل وارونگی وابستگی (Dependency Inversion Principle)
- 13. نامگذاری معنادار در کد
- 14. نامگذاری متغیرها
- 15. نامگذاری توابع و متدها
- 16. نامگذاری کلاسها
- 17. نامگذاری پکیجها و ماژولها
- 18. انتخاب نامهای توصیفی و پرهیز از اختصارات
- 19. اهمیت استفاده از افعال و اسامی در نامگذاری
- 20. نکات نامگذاری در زبانهای مختلف (مثال: جاوااسکریپت، پایتون، جاوا)
- 21. نکات نامگذاری برای متغیرهای بولین
- 22. نکات نامگذاری برای توابع و متدها
- 23. ساختاردهی توابع و متدها
- 24. اندازه ایدهآل تابع
- 25. تمرکز تابع بر یک وظیفه
- 26. پرهیز از پارامترهای زیاد در توابع
- 27. مدیریت مقادیر بازگشتی
- 28. توابع کمکی (Helper Functions)
- 29. توابع خالص (Pure Functions)
- 30. توابع با اثر جانبی (Functions with Side Effects)
- 31. نکات مربوط به توابع در برنامه نویسی تابعی
- 32. مدیریت کامنتها
- 33. چه زمانی از کامنت استفاده کنیم؟
- 34. چه زمانی از کامنت اجتناب کنیم؟
- 35. کامنتهای توضیحی در مقابل کامنتهای توجیهی
- 36. کامنتهای مربوط به کد منسوخ شده
- 37. کامنتهای TODO و FIX ME
- 38. نکات منفی کامنتنویسی نادرست
- 39. قالببندی و زیباییشناسی کد
- 40. فضاهای خالی و فاصلهگذاری
- 41. استفاده صحیح از تبها و فاصلهها
- 42. خطوط خالی برای جداسازی بلوکهای کد
- 43. همترازی کد (Indentation)
- 44. طول خطوط کد
- 45. قالببندی بر اساس استانداردهای زبان (PEP 8 برای پایتون، ESLint برای جاوااسکریپت)
- 46. استفاده از ابزارهای قالببندی خودکار (Formatters)
- 47. مدیریت خطا و استثنائات
- 48. مدیریت خطاهای رایج
- 49. استفاده صحیح از try-catch-finally
- 50. ارائه پیامهای خطای گویا
- 51. ثبت خطاها (Error Logging)
- 52. کدهای خطا (Error Codes)
- 53. استثنائات سفارشی (Custom Exceptions)
- 54. استراتژیهای بازیابی از خطا
- 55. مفهوم "Failure-Prone" و "Failure-Resistant"
- 56. مدیریت خطا در سمت کلاینت (Frontend)
- 57. مدیریت خطا در سمت سرور (Backend)
- 58. کلاسها و اشیاء تمیز (Object-Oriented Programming)
- 59. اصول کلی طراحی کلاس
- 60. کپسولهسازی (Encapsulation)
- 61. وراثت (Inheritance)
- 62. چندریختی (Polymorphism)
- 63. تزریق وابستگی (Dependency Injection)
- 64. طراحی واسطها (Interfaces)
- 65. انواع کلاسهای رایج (Entity, Service, Repository, Controller)
- 66. کلاسهای داده (Data Classes)
- 67. کلاسهای کمکی (Utility Classes)
- 68. کلاسهای مسئول (Responsible Classes)
- 69. مدیریت وابستگیها
- 70. طراحی پکیجها و ماژولها
- 71. تفکیک مسئولیتها در ماژولها
- 72. وابستگیهای بین ماژولها
- 73. مفهوم "Separation of Concerns"
- 74. مدیریت ماژولهای داخلی و خارجی
- 75. استفاده از وابستگیهای معکوس (Inversion of Control)
- 76. تستپذیری کد (Testability)
- 77. اهمیت تست واحد (Unit Testing)
- 78. اهمیت تست ادغام (Integration Testing)
- 79. اهمیت تست پذیرش (Acceptance Testing)
- 80. نوشتن کد قابل تست
- 81. تکنیکهای طراحی برای تستپذیری
- 82. Mocking و Stubbing
- 83. تست راندمان (Performance Testing)
- 84. تست امنیتی (Security Testing)
- 85. تست خودکار (Automated Testing)
- 86. دیباگ کردن کد تمیز
- 87. تکنیکهای موثر دیباگ کردن
- 88. استفاده از ابزارهای دیباگ کردن
- 89. خواندن پیامهای خطا
- 90. بررسی منطق برنامه
- 91. نوشتن لاگهای دیباگ
- 92. تکنیک "Rubber Duck Debugging"
- 93. کد ناخوانا و راههای اصلاح آن
- 94. بازسازی کد (Refactoring)
- 95. انواع رایج بازسازی کد
- 96. استخراج تابع
- 97. استخراج کلاس
- 98. جایگزینی الگو (Replace Magic Number with Symbolic Constant)
- 99. جایگزینی شرط با انتزاع (Replace Conditional with Polymorphism)
- 100. حذف کد تکراری (Don't Repeat Yourself - DRY)
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.