کتاب صوتی پیمایش در دنیای کدنویسی تمیز: از تئوری تا عمل
پیمایش در دنیای کدنویسی تمیز: از تئوری تا عمل پیمایش در دنیای کدنویسی تمیز: از تئوری تا عمل - کلید ورود به دنیای حرفهای برنامه نویسان آیا میخواهید کدهایی بنویسید که نه تنها کار کنند، بلکه خوانا، قاب...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره پیمایش در دنیای کدنویسی تمیز: از تئوری تا عمل
موضوع کلی: برنامه نویسی
موضوع میانی: کدنویسی تمیز (Clean Code)
📋 سرفصلهای دوره
- 1. مقدمه: چرا کد تمیز مهم است؟
- 2. بوی بد کد (Code Smell) چیست؟ آشنایی با نشانههای کد کثیف
- 3. هزینههای پنهان و آشکار کد کثیف در یک پروژه
- 4. اخلاق حرفهای و مسئولیتپذیری در کدنویسی
- 5. معرفی کتاب کد تمیز (Clean Code) اثر رابرت سی. مارتین
- 6. اصول بنیادین کدنویسی تمیز
- 7. ارتباط کد تمیز و توسعه چابک (Agile)
- 8. قانون پسر پیشاهنگ: کد را بهتر از آنچه تحویل گرفتی، ترک کن
- 9. ابزارهای کمکی برای کدنویسی تمیز (Linters, Formatters)
- 10. نقشه راه دوره: از تئوری تا عمل
- 11. بخش نامگذاری: اهمیت نامهای گویا و با معنی
- 12. قواعد نامگذاری متغیرها: شفافیت و قصد
- 13. قواعد نامگذاری توابع و متدها: استفاده از فعل
- 14. قواعد نامگذاری کلاسها و اینترفیسها: استفاده از اسم
- 15. پرهیز از نامهای مبهم و اطلاعات غلط (Disinformation)
- 16. ایجاد تمایز معنادار در نامها
- 17. اهمیت ثبات و یکپارچگی در نامگذاری
- 18. استفاده از زمینه (Context) برای کوتاهسازی و بهبود نامها
- 19. طول مناسب برای نامها: نه خیلی کوتاه، نه خیلی بلند
- 20. استفاده از واژگان دامنه مسئله (Domain-Specific Language)
- 21. بخش توابع: قانون اول: کوچک بودن
- 22. قانون دوم: انجام تنها یک کار (اصل تک مسئولیتی - SRP)
- 23. کاهش سطوح تودرتویی (Nesting) در توابع
- 24. تعداد ایدهآل آرگومانها برای یک تابع (صفر، یک، دو)
- 25. چرا باید از توابع با آرگومانهای زیاد پرهیز کرد؟
- 26. آرگومانهای پرچمی (Flag Arguments) و دلایل اجتناب از آنها
- 27. توابع بدون عوارض جانبی (No Side Effects)
- 28. جداسازی دستور و پرسوجو (Command-Query Separation - CQS)
- 29. استفاده از استثناها (Exceptions) به جای برگرداندن کدهای خطا
- 30. اصل خودت را تکرار نکن (Don't Repeat Yourself - DRY)
- 31. یک سطح انتزاع (Abstraction) در هر تابع
- 32. طراحی امضای تابع (Function Signature) خوانا
- 33. تکنیکهای شکستن توابع طولانی و پیچیده
- 34. استخراج متد (Extract Method) به عنوان یک ابزار ریفکتورینگ
- 35. کارگاه عملی: بازنویسی یک تابع پیچیده
- 36. بخش کامنتها: کد باید خود معرف باشد
- 37. کامنتهای خوب: توضیح "چرا"، نه "چگونه"
- 38. کامنتهای قانونی و کپیرایت
- 39. استفاده صحیح از کامنتهای TODO
- 40. کامنتهای مستندساز (Javadocs, Docstrings) و کاربرد آنها
- 41. کامنتهای بد: توضیحات اضافه و زائد
- 42. کد کامنتشده: چرا باید آن را حذف کرد؟
- 43. پرهیز از کامنتهای تاریخچهای و لاگ تغییرات
- 44. استفاده از کامنت برای شفافسازی کدهای پیچیده (با احتیاط)
- 45. قانون طلایی کامنتنویسی: بهترین کامنت، کدی است که به آن نیاز ندارد
- 46. بخش قالببندی کد: اهمیت قالببندی در خوانایی
- 47. قالببندی عمودی: فاصلهگذاری بین مفاهیم
- 48. تراکم عمودی: نزدیکی کدهای مرتبط به یکدیگر
- 49. قالببندی افقی: فاصلهگذاری و همترازی
- 50. طول مناسب خطوط کد
- 51. قوانین تورفتگی (Indentation)
- 52. قالببندی متغیرهای محلی و پارامترها
- 53. اهمیت پیروی از قوانین قالببندی تیمی
- 54. استفاده از ابزارهای قالببندی خودکار
- 55. تمرین: قالببندی یک فایل کد نامرتب
- 56. بخش اشیاء و ساختارهای داده: انتزاع دادهها (Data Abstraction)
- 57. پنهانسازی جزئیات پیادهسازی (Encapsulation)
- 58. تفاوت بین اشیاء (Objects) و ساختارهای داده (Data Structures)
- 59. قانون دیمیتر (Law of Demeter): کمتر با غریبهها صحبت کن
- 60. الگوی Data Transfer Object (DTO)
- 61. مخاطرات استفاده از الگوی Active Record
- 62. قدرت پلیمورفیسم در ایجاد کد تمیز
- 63. مزایای استفاده از اشیاء تغییرناپذیر (Immutable Objects)
- 64. حفظ انسجام (Cohesion) بالا در کلاسها
- 65. کلاسهای کوچک با مسئولیت مشخص
- 66. بخش مدیریت خطا: استفاده از استثناها به جای برگرداندن کدهای خطا
- 67. تفاوت استثناهای Checked و Unchecked
- 68. ارائه زمینه (Context) کافی در استثناها
- 69. کپسولهسازی (Wrapping) استثناهای کتابخانههای خارجی
- 70. نوشتن بلوکهای try-catch-finally تمیز
- 71. از برگرداندن null خودداری کنید
- 72. از ارسال null به عنوان آرگومان بپرهیزید
- 73. الگوی شیء پوچ (Null Object Pattern)
- 74. تعریف مرزهای خطا در برنامه (Error Boundaries)
- 75. رویکرد یکپارچه به مدیریت خطا
- 76. بخش اصول طراحی (SOLID): مقدمهای بر اصول طراحی شیءگرا
- 77. اصل تک مسئولیتی (Single Responsibility Principle - SRP)
- 78. اصل باز-بسته (Open/Closed Principle - OCP)
- 79. اصل جایگزینی لیسکوف (Liskov Substitution Principle - LSP)
- 80. اصل تفکیک اینترفیس (Interface Segregation Principle - ISP)
- 81. اصل وارونگی وابستگی (Dependency Inversion Principle - DIP)
- 82. مفهوم وابستگی (Coupling) و انسجام (Cohesion)
- 83. اصل سادگی (Keep It Simple, Stupid - KISS)
- 84. اصل به آن نیاز نخواهی داشت (You Ain't Gonna Need It - YAGNI)
- 85. چگونه این اصول به کد تمیز کمک میکنند
- 86. بخش تستنویسی: سه قانون توسعه مبتنی بر آزمون (TDD)
- 87. اهمیت نوشتن تستهای تمیز
- 88. اصول F.I.R.S.T برای تستهای واحد
- 89. ساختار یک تست خوب: Arrange, Act, Assert
- 90. یک مفهوم در هر تست: خوانایی تستها
- 91. استفاده از زبان دامنه در نامگذاری تستها
- 92. تست کردن مرزها و موارد خاص (Boundary Conditions)
- 93. استفاده صحیح از Mock ها و Stub ها
- 94. پوشش کد (Code Coverage) چیست و چه چیزی را نمیگوید
- 95. تستها به عنوان مستندات زنده و قابل اجرا
- 96. بخشهای پیشرفته و جمعبندی: شناسایی و دستهبندی بوهای بد کد (Code Smells)
- 97. مقدمهای بر ریفکتورینگ (Refactoring) امن
- 98. کدنویسی تمیز در محیطهای همروند (Concurrency)
- 99. کدنویسی تمیز در تیم: استانداردها و بازبینی کد (Code Review)
- 100. جمعبندی نهایی: تبدیل شدن به یک صنعتگر نرمافزار (Software Craftsman)
برای آموختن، همیشه لازم نیست بخوانید
گاهی بهترین فرصت یادگیری زمانی است که در مسیر رفتوآمد هستید، قدم میزنید، استراحت میکنید یا کارهای روزمرهتان را انجام میدهید. محتوای صوتی کمک میکند از این لحظهها برای شنیدن، اندیشیدن و آشنایی با موضوعات تازه بهره ببرید.
◷
یادگیری در دل روزمرگی
از زمان رفتوآمد، پیادهروی یا استراحت برای شنیدن محتوای مفید استفاده کنید؛ بدون آنکه همیشه به کتاب چاپی یا صفحه نمایش نیاز داشته باشید.
◎
تجربهای شنیداری و دلنشین
با روایت صوتی، توضیحات گفتاری و فضای شنیداری هر محتوا همراه شوید و متناسب با سلیقه خود، شیوه تازهای برای دریافت مطالب تجربه کنید.
✦
گسترش دانش و دیدگاه
با موضوعات متنوع آشنا شوید، ایدههای تازه کشف کنید و فرصت بیشتری برای یادگیری مستمر و پرورش کنجکاوی خود بسازید.
♫
همراه با سبک زندگی شما
محتوای صوتی را متناسب با برنامه روزانه خود انتخاب کنید و در زمان مناسب، شنیدن را به بخشی از عادتهای شخصیتان تبدیل کنید.
کتاب صوتی یا پادکست؟
کتاب صوتی
راهی برای همراه شدن با محتوای یک کتاب از طریق شنیدن. بسته به اثر، میتوانید داستانها، آموزشها، مفاهیم تخصصی یا مطالب کاربردی را در قالب روایت و بیان صوتی دنبال کنید.
مناسب برای شنیدن و مرور محتوای کتابها
پادکست آموزشی
فرصتی برای دنبال کردن موضوعات مشخص در قالب گفتوگو، روایت، توضیح آموزشی یا مجموعهای از قسمتهای صوتی؛ مناسب برای کشف ایدهها و آشنایی با دیدگاههای گوناگون.
مناسب برای یادگیری موضوعی و شنیدن دیدگاههای تازه
هر جا که هستید، شنیدن را آغاز کنید
با دستگاه مناسب خود، محتوای صوتی را به آسانی دنبال کنید.
▯
گوشی هوشمند
اندروید و آیفون
▣
تبلت
برای شنیدن و دنبال کردن محتوا
▤
رایانه و لپتاپ
با پخشکننده صوتی سازگار
♫
هدفون و بلندگو
برای شنیدن متناسب با محیط
چطور از تجربه شنیدن بیشتر بهره ببریم؟
✦ زمان مناسبی برای شنیدن انتخاب کنید؛ زمانی که بتوانید با آرامش به محتوا توجه داشته باشید.
✦ برای مطالب آموزشی، نکتههای مهم را یادداشت کنید یا پس از پایان شنیدن، آنها را مرور کنید.
✦ اگر محتوا طولانی است، آن را در چند نوبت دنبال کنید تا فرصت بیشتری برای درک و مرور داشته باشید.
✦ هنگام رانندگی یا انجام کارهای نیازمند تمرکز، ایمنی را در اولویت قرار دهید و از شیوه شنیدنی استفاده کنید که حواس شما را مختل نکند.
هر شنیدن، فرصتی برای کشف است
با کتابهای صوتی و پادکستهای آموزشی، دنیای تازهای از ایدهها، روایتها و آموختنیها را به لحظههای خود اضافه کنید.
express24.ir
امکانات پخش، ادامه شنیدن و دسترسی آفلاین به نوع فایل، دستگاه و نرمافزار مورد استفاده بستگی دارد.
تگها:
Best practices
clean code
Code Maintainability
Code Principles
Code Readability
Learn Programming
Programming
Refactoring
Software Development
Software Engineering
اصول کدنویسی
بازسازی کد
برنامه نویسی
بهترین روش ها
توسعه نرم افزار
خوانایی کد
کدنویسی تمیز
مهندسی نرم افزار
نگهداری کد
یادگیری برنامه نویسی
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.