, ,

کتاب رفاکتورینگ (Refactoring) کد بر اساس اصول OOP

تومان249,950

انتخاب پلن

torobpay
هر قسط با ترب‌پی: تومان62,488
۴ قسط ماهانه. بدون سود، چک و ضامن.

📚 محتوای این محصول آموزشی (پکیج کامل)

💡 این محصول یک نسخهٔ کامل و جامع است

تمامی محتوای آموزشی این کتاب در قالب یک بسته‌ی کامل و یکپارچه ارائه می‌شود و شامل تمام نسخه‌ها و فایل‌های موردنیاز برای یادگیری است.

🎁 محتویات کامل بسته دانلودی

🎯 این بسته یک دورهٔ آموزشی کامل و چندلایه است؛ شامل کتاب‌ها، تمرین‌ها و خودآزمایی .


ℹ️ نکات مهم هنگام خرید

  • این محصول به صورت فایل دانلودی کامل ارائه می‌شود و نسخهٔ چاپی ندارد.
  • توجه: لینک‌های اختصاصی دوره طی حداکثر 24 ساعت پس از ثبت سفارش ارسال می‌شوند.
  • دقت کنید لینک ها به شماره موبایل شما ارسال می شوند. پس در ارائه شماره موبایل صحیح دقت کنید.
  • برای راهنمایی در مورد نحوه دانلود به شماره 09395106248 پیامک دهید یا تماس بگیرید. (ایده آل ترین گزینه ارسال پیام در یکی از پیام رسان ها به همین شماره است تا سریعا لینک های کتاب همانجا برای شما ارسال گردد.)
  • اگر پرداخت انجام شده ولی بعد از 24 ساعت هنوز لینک‌ها را دریافت نکرده‌اید، نام و نام خانوادگی و نام محصول را پیامک کنید تا لینک‌ها دوباره ارسال شوند.

💬 راه‌های ارتباطی پشتیبانی:
واتس‌اپ یا هر پیام رسان داخلی یا پیامک: 09395106248
تلگرام: @ma_limbs

📚 کتاب آموزشی جامع

📚 اطلاعات کتاب

عنوان کتاب: کتاب رفاکتورینگ (Refactoring) کد بر اساس اصول OOP

موضوع کلی: برنامه نویسی

موضوع میانی: برنامه‌نویسی شیءگرا (OOP)

📋 سرفصل‌های کتاب (100 موضوع)

  • 1. مقدمه‌ای بر رفاکتورینگ: چرا و چگونه؟
  • 2. بدهی فنی (Technical Debt) و نقش رفاکتورینگ
  • 3. چرخه عمر توسعه نرم‌افزار و زمان‌بندی رفاکتورینگ
  • 4. معرفی بوی بد کد (Code Smells): نشانه‌های نیاز به تغییر
  • 5. اهمیت تست‌های واحد (Unit Tests) در رفاکتورینگ
  • 6. نوشتن تست‌های امنیتی قبل از رفاکتورینگ
  • 7. اصول برنامه‌نویسی شیءگرا: مرور و کاربرد در رفاکتورینگ
  • 8. اصل کپسوله‌سازی (Encapsulation) و رفاکتورینگ
  • 9. اصل وراثت (Inheritance) و رفاکتورینگ
  • 10. اصل چندریختی (Polymorphism) و رفاکتورینگ
  • 11. اصل انتزاع (Abstraction) و رفاکتورینگ
  • 12. معرفی اصول SOLID: راهنمای طراحی شیءگرا
  • 13. تفکر رفاکتورینگ: تغییرات کوچک و گام‌به‌گام
  • 14. ابزارهای خودکارسازی رفاکتورینگ در IDEها
  • 15. فرهنگ رفاکتورینگ در تیم و سازمان
  • 16. متدهای طولانی (Long Method): شناسایی و راه‌حل‌ها
  • 17. کلاس‌های بزرگ (Large Class): نشانه‌ها و اثرات
  • 18. داده‌های تکراری (Duplicate Code): مشکل و ریشه‌ها
  • 19. نام‌های نامفهوم (Obscure Names): تاثیر بر خوانایی
  • 20. لیست پارامترهای طولانی (Long Parameter List)
  • 21. وابستگی‌های زیاد (Feature Envy): حسادت ویژگی
  • 22. کلاس‌های داده‌ای (Data Class): ضد الگوی OOP
  • 23. سوئیچ‌های شرطی پیچیده (Switch Statements): نشانه‌های کد بد
  • 24. کلاس‌های تنبل (Lazy Class): بی‌مصرفی کلاس‌ها
  • 25. کلاس‌های میانی (Middle Man): واسطه‌های اضافی
  • 26. گروه‌های داده‌ای (Data Clumps): تکرار داده‌ها
  • 27. وسواس به نوع اولیه (Primitive Obsession)
  • 28. تغییرات پراکنده (Divergent Change): نقض SRP
  • 29. جراحی پراکنده (Shotgun Surgery): تغییرات گسترده
  • 30. کد مرده (Dead Code) و کد بلااستفاده
  • 31. نام‌گذاری بهتر: تغییر نام (Rename) متغیرها، متدها و کلاس‌ها
  • 32. استخراج متد (Extract Method): کوچک‌سازی و افزایش خوانایی
  • 33. جاسازی متد (Inline Method): حذف واسطه‌های غیرضروری
  • 34. جایگزینی متغیر موقت با کوئری (Replace Temp with Query)
  • 35. معرفی متغیر توضیح‌دهنده (Introduce Explaining Variable)
  • 36. تقسیم متغیر موقت (Split Temporary Variable)
  • 37. جایگزینی عدد جادویی با ثابت نام‌گذاری شده (Replace Magic Number with Symbolic Constant)
  • 38. انتقال متد (Move Method): انتقال مسئولیت به کلاس صحیح
  • 39. انتقال فیلد (Move Field): انتقال داده به کلاس صحیح
  • 40. استخراج کلاس (Extract Class): شکستن کلاس‌های بزرگ
  • 41. جاسازی کلاس (Inline Class): ادغام کلاس‌های کم‌فایده
  • 42. پنهان کردن نماینده (Hide Delegate): کاهش وابستگی
  • 43. حذف واسطه (Remove Middle Man)
  • 44. معرفی شیء پارامتر (Introduce Parameter Object): کوتاه‌سازی لیست پارامتر
  • 45. جایگزینی انتصاب به پارامتر با متد (Remove Assignments to Parameters)
  • 46. استفاده از Factory Method به جای Constructor
  • 47. استخراج اینترفیس (Extract Interface): تعریف قرارداد
  • 48. معرفی کلاس انتزاعی (Introduce Abstract Class): انتزاع رفتار مشترک
  • 49. فرم‌بندی متد الگو (Form Template Method)
  • 50. جایگزینی الگوریتم (Substitute Algorithm)
  • 51. تجزیه شرطی (Decompose Conditional): ساده‌سازی منطق شرطی
  • 52. جایگزینی شرطی‌های تو در تو با Guard Clauses
  • 53. جایگزینی شرطی با چندریختی (Replace Conditional with Polymorphism)
  • 54. رفاکتورینگ برای الگوی Strategy: جایگزینی شرطی با رفتار
  • 55. رفاکتورینگ برای الگوی State: مدیریت حالت‌های شیء
  • 56. جایگزینی کد نوع با کلاس/زیرکلاس (Replace Type Code with Class/Subclasses)
  • 57. جایگزینی کد نوع با الگوهای State/Strategy
  • 58. معرفی شیء Null (Introduce Null Object): حذف بررسی‌های null
  • 59. پارامترسازی متد (Parameterize Method): افزایش انعطاف‌پذیری
  • 60. جداسازی کوئری از تغییردهنده (Separate Query from Modifier)
  • 61. حذف پرچم کنترلی (Remove Control Flag)
  • 62. یکپارچه‌سازی عبارت‌های شرطی (Consolidate Conditional Expression)
  • 63. یکپارچه‌سازی قطعات شرطی تکراری (Consolidate Duplicate Conditional Fragments)
  • 64. جایگزینی حلقه با Pipeline (Replace Loop with Pipeline)
  • 65. کپسوله‌سازی مجموعه (Encapsulate Collection)
  • 66. SRP: شناسایی نقض اصل مسئولیت یگانه (Single Responsibility Principle)
  • 67. SRP: اعمال Extract Class برای رعایت مسئولیت یگانه
  • 68. SRP: رفاکتورینگ به الگوی Command برای SRP
  • 69. OCP: طراحی برای اصل باز/بسته (Open/Closed Principle)
  • 70. OCP: رفاکتورینگ با الگوی Strategy برای توسعه‌پذیری
  • 71. OCP: رفاکتورینگ با الگوی Template Method برای توسعه‌پذیری
  • 72. LSP: درک نقض اصل جایگزینی لیسکوف (Liskov Substitution Principle)
  • 73. LSP: اطمینان از زیرنوع‌سازی رفتاری
  • 74. LSP: رفاکتورینگ سلسله مراتب وراثت برای LSP
  • 75. ISP: اهمیت اصل جداسازی اینترفیس (Interface Segregation Principle)
  • 76. ISP: استخراج اینترفیس‌های وظیفه‌محور
  • 77. ISP: رفاکتورینگ اینترفیس‌های حجیم (Fat Interfaces)
  • 78. DIP: معرفی اصل وارونگی وابستگی (Dependency Inversion Principle)
  • 79. DIP: درک تزریق وابستگی (Dependency Injection)
  • 80. DIP: رفاکتورینگ به تزریق وابستگی (پیاده‌سازی دستی)
  • 81. DIP: رفاکتورینگ با Containerهای IoC (مقدمه)
  • 82. DIP: رفاکتورینگ برای قابلیت تست‌پذیری (Mocks و Stubs)
  • 83. بررسی رابطه بین Cohesion و Coupling در رفاکتورینگ
  • 84. رفاکتورینگ برای رعایت اصل وابستگی‌های بدون چرخه (Acyclic Dependencies Principle)
  • 85. رفاکتورینگ برای رعایت اصل وابستگی‌های پایدار (Stable Dependencies Principle)
  • 86. استراتژی‌های رفاکتورینگ کد میراثی (Legacy Code)
  • 87. متد میکادو (Mikado Method) برای کد میراثی
  • 88. معرفی تست‌های کاراکتریزاسیون (Characterization Tests)
  • 89. رفاکتورینگ دیتابیس‌ها: اصول و چالش‌ها
  • 90. اعمال رفاکتورینگ در معماری میکروسرویس‌ها
  • 91. ملاحظات عملکردی در رفاکتورینگ (Performance Refactoring)
  • 92. ملاحظات امنیتی در رفاکتورینگ (Security Refactoring)
  • 93. رفاکتورینگ برای مدیریت همروندی (Concurrency Refactoring)
  • 94. رفاکتورینگ ضدالگوها (Anti-Patterns)
  • 95. اندازه‌گیری تاثیر رفاکتورینگ و معیارهای آن
  • 96. رفاکتورینگ در محیط تیمی و مشارکت
  • 97. برنامه‌نویسی زوجی (Pair Programming) و رفاکتورینگ
  • 98. بازبینی کد (Code Review) برای شناسایی فرصت‌های رفاکتورینگ
  • 99. رفاکتورینگ در برابر بازنویسی کامل (Rewriting vs. Refactoring)
  • 100. آینده رفاکتورینگ و نقش هوش مصنوعی

📚 محتوای این محصول آموزشی (پکیج کامل)

💡 این محصول یک نسخهٔ کامل و جامع است

تمامی محتوای آموزشی این کتاب در قالب یک بسته‌ی کامل و یکپارچه ارائه می‌شود و شامل تمام نسخه‌ها و فایل‌های موردنیاز برای یادگیری است.

🎁 محتویات کامل بسته دانلودی

🎯 این بسته یک دورهٔ آموزشی کامل و چندلایه است؛ شامل کتاب‌ها، تمرین‌ها و خودآزمایی .


ℹ️ نکات مهم هنگام خرید

  • این محصول به صورت فایل دانلودی کامل ارائه می‌شود و نسخهٔ چاپی ندارد.
  • توجه: لینک‌های اختصاصی دوره طی حداکثر 24 ساعت پس از ثبت سفارش ارسال می‌شوند.
  • دقت کنید لینک ها به شماره موبایل شما ارسال می شوند. پس در ارائه شماره موبایل صحیح دقت کنید.
  • برای راهنمایی در مورد نحوه دانلود به شماره 09395106248 پیامک دهید یا تماس بگیرید. (ایده آل ترین گزینه ارسال پیام در یکی از پیام رسان ها به همین شماره است تا سریعا لینک های کتاب همانجا برای شما ارسال گردد.)
  • اگر پرداخت انجام شده ولی بعد از 24 ساعت هنوز لینک‌ها را دریافت نکرده‌اید، نام و نام خانوادگی و نام محصول را پیامک کنید تا لینک‌ها دوباره ارسال شوند.

💬 راه‌های ارتباطی پشتیبانی:
واتس‌اپ یا هر پیام رسان داخلی یا پیامک: 09395106248
تلگرام: @ma_limbs

دیدگاهها

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین نفری باشید که دیدگاهی را ارسال می کنید برای “کتاب رفاکتورینگ (Refactoring) کد بر اساس اصول OOP”

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

پیمایش به بالا