اپلیکیشن اندرویدی فلشکارت آموزشی Clean Code in Large-Scale Projects
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره Clean Code in Large-Scale Projects
موضوع کلی: برنامه نویسی
موضوع میانی: کدنویسی تمیز (Clean Code)
📋 سرفصلهای دوره
- 1. مقدمه ای بر کدنویسی تمیز
- 2. چرا کدنویسی تمیز مهم است؟
- 3. تأثیر کدنویسی تمیز بر پروژههای بزرگ
- 4. اصول SOLID در کدنویسی تمیز
- 5. اصل Single Responsibility (SRP)
- 6. کاربرد SRP در کلاسها
- 7. کاربرد SRP در توابع
- 8. اصل Open/Closed (OCP)
- 9. پیاده سازی OCP با استفاده از وراثت
- 10. پیاده سازی OCP با استفاده از انتزاع
- 11. اصل Liskov Substitution (LSP)
- 12. تستپذیری LSP
- 13. پیامدهای نقض LSP
- 14. اصل Interface Segregation (ISP)
- 15. مزایای ISP
- 16. طراحی اینترفیس های کوچک و متمرکز
- 17. اصل Dependency Inversion (DIP)
- 18. Dependency Injection (DI)
- 19. استفاده از DI برای پیاده سازی DIP
- 20. اصول DRY (Don't Repeat Yourself)
- 21. شناسایی کدهای تکراری
- 22. تکنیک های اجتناب از تکرار
- 23. اصل KISS (Keep It Simple, Stupid)
- 24. اهمیت سادگی در کد
- 25. پیاده سازی KISS در طراحی
- 26. اصل YAGNI (You Ain't Gonna Need It)
- 27. اجتناب از پیش بینی های غیرضروری
- 28. تأثیر YAGNI بر سرعت توسعه
- 29. نامگذاری معنادار متغیرها
- 30. نامگذاری معنادار توابع
- 31. نامگذاری معنادار کلاس ها
- 32. قوانین نامگذاری برای ثابت ها
- 33. قوانین نامگذاری برای پارامترها
- 34. نامگذاری در زبان های مختلف (مثال)
- 35. توابع کوچک و متمرکز
- 36. هدف از توابع کوچک
- 37. اندازه مناسب تابع
- 38. توابع با یک مسئولیت مشخص
- 39. توابع با پارامترهای کم
- 40. تکنیک های کاهش تعداد پارامترها
- 41. کامنت نویسی موثر
- 42. زمان استفاده از کامنت
- 43. انواع کامنت های مفید
- 44. کامنت های غیرضروری و مضر
- 45. کامنت های روشن کننده منطق پیچیده
- 46. کامنت های توضیح دهنده دلیل یک تصمیم
- 47. قالب بندی کد
- 48. اهمیت قالب بندی یکسان
- 49. قوانین فاصله گذاری
- 50. قوانین تورفتگی (Indentation)
- 51. قوانین خطوط خالی
- 52. استفاده از ابزارهای فرمت دهی خودکار
- 53. مدیریت خطاها
- 54. مدیریت خطاهای قابل پیش بینی
- 55. مدیریت خطاهای غیرقابل پیش بینی
- 56. استفاده از استثناها (Exceptions)
- 57. مدیریت استثناهای خاص
- 58. استفاده از کد بازگشتی (Return Codes)
- 59. طراحی کلاس ها
- 60. اصل Demeter (Law of Demeter)
- 61. کاربرد Demeter در کد
- 62. پیامدهای نقض Demeter
- 63. کلاس های داده (Data Classes)
- 64. کلاس های رفتاری (Behavioral Classes)
- 65. ترکیب کلاس های داده و رفتاری
- 66. الگوهای طراحی (Design Patterns)
- 67. مقدمه ای بر الگوهای طراحی
- 68. الگوهای GOF (Gang of Four)
- 69. الگوهای سازنده (Creational Patterns) - Singleton
- 70. الگوهای سازنده - Factory Method
- 71. الگوهای سازنده - Abstract Factory
- 72. الگوهای ساختاری (Structural Patterns) - Adapter
- 73. الگوهای ساختاری - Decorator
- 74. الگوهای ساختاری - Facade
- 75. الگوهای رفتاری (Behavioral Patterns) - Strategy
- 76. الگوهای رفتاری - Observer
- 77. الگوهای رفتاری - Command
- 78. کدنویسی تمیز در پروژه های بزرگ: چالش ها
- 79. مقیاس پذیری کد
- 80. سازگاری در تیم های بزرگ
- 81. مرور کد (Code Review)
- 82. اهمیت و فرآیند مرور کد
- 83. نکات مهم در مرور کد
- 84. اصول Refactoring
- 85. چه زمانی Refactoring کنیم؟
- 86. تکنیک های Refactoring رایج
- 87. تکنیک Extract Method
- 88. تکنیک Extract Class
- 89. تکنیک Move Method
- 90. تکنیک Rename Variable
- 91. تکنیک Introduce Parameter Object
- 92. تکنیک Replace Magic Number with Symbolic Constant
- 93. تکنیک Replace Conditional with Polymorphism
- 94. تست نویسی (Testing)
- 95. اهمیت تست نویسی
- 96. تست واحد (Unit Testing)
- 97. تست ادغام (Integration Testing)
- 98. تست پذیرش (Acceptance Testing)
- 99. اصول TDD (Test-Driven Development)
- 100. چرخه TDD
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.