کتاب تزریق وابستگی؛ نقشهٔ عملی کاهش بدهی فنی و ساخت نرم‌افزار پایدار با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

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

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره تزریق وابستگی؛ نقشهٔ عملی کاهش بدهی فنی و ساخت نرم‌افزار پایدار

موضوع کلی: معماری نرم‌افزار و مهندسی کیفیت

موضوع میانی: طراحی ماژولار و مدیریت وابستگی‌ها

📋 سرفصل‌های دوره

  • 1. بدهی فنی ناشی از وابستگی‌های مستقیم
  • 2. هزینهٔ تغییر، تست و وابستگی‌های پنهان
  • 3. تزریق وابستگی چیست و چه مسئله‌ای حل می‌کند؟
  • 4. تفاوت تزریق وابستگی، کنترل وابستگی معکوس و قانون وابستگی
  • 5. مرز مالکیت وابستگی و مسئولیت
  • 6. طبقه‌بندی وابستگی‌ها: داده، سرویس، زمان، ورودی و زیرساخت
  • 7. طراحی قراردادهای وابستگی کوچک، پایدار و قابل‌استفاده
  • 8. انتخاب abstraction مناسب: interface، protocol و contract
  • 9. پرهیز از abstraction اضافی و قراردادهای نشت‌کننده
  • 10. تزریق وابستگی از طریق سازنده
  • 11. تزریق وابستگی از طریق setter
  • 12. تزریق وابستگی از طریق متد
  • 13. تزریق وابستگی از طریق factory
  • 14. مقایسه سبک‌های تزریق و انتخاب الگوی مناسب
  • 15. طراحی composition root
  • 16. مدیریت object graph و وابستگی‌های زنجیره‌ای
  • 17. تشخیص و رفع circular dependency
  • 18. مدل‌سازی optional dependency
  • 19. استفاده از fallback، lazy loading و proxy
  • 20. decorator و proxy برای افزودن رفتار بدون شکستن قرارداد
  • 21. dependency factory برای انتخاب runtime dependency
  • 22. wiring دستی در برابر DI container
  • 23. ثبت dependencyها در container
  • 24. انتخاب lifetime: transient، scoped و singleton
  • 25. ownership، disposal و مدیریت منابع
  • 26. خطرات singleton و وابستگی stateful
  • 27. scope، nested scope و lifecycle در requestها
  • 28. validation و fail-fast در composition root
  • 29. تزریق configuration و wiring وابسته به محیط
  • 30. مدیریت secretها و dependencyهای حساس
  • 31. factories برای تنظیمات و وابستگی‌های پویا
  • 32. یکپارچه‌سازی DI با lifecycle framework
  • 33. DI در معماری لایه‌ای
  • 34. DI در معماری hexagonal
  • 35. DI در طراحی لانه‌ای و مرزهای domain، application و infrastructure
  • 36. DI در سیستم‌های plugin-based
  • 37. DI در microservices و ترکیب سرویس‌ها
  • 38. DI در event-driven architecture
  • 39. DI در transaction و persistence boundaries
  • 40. DI برای security و authorization
  • 41. DI برای logging و observability
  • 42. DI برای validation و error handling
  • 43. DI برای caching و منابع lazy
  • 44. DI برای feature flags و تغییر رفتار runtime
  • 45. DI برای تست‌های واحد با stub، mock و fake
  • 46. انتخاب test double مناسب و پرهیز از over-mocking
  • 47. طراحی test seam بدون افزایش پیچیدگی
  • 48. تست composition root و integration tests
  • 49. contract tests برای قراردادهای وابستگی
  • 50. DI برای migration و versioned contracts
  • 51. DI برای multi-tenancy و variationهای runtime
  • 52. سازمان‌دهی packages و modules بر اساس وابستگی‌ها
  • 53. ضدنمونه‌های رایج: service locator، static dependency و god object
  • 54. ضدنمونه‌های container: registrationهای پنهان و object graphهای بی‌حد
  • 55. مدیریت constructor explosion و graph complexity
  • 56. تحلیل performance: registration، resolution، allocation و startup
  • 57. refactoring legacy code با ایجاد seams
  • 58. مهاجرت تدریجی از coupling مستقیم به DI
  • 59. بازگرداندن کنترل وابستگی در سیستم‌های قدیمی
  • 60. اندازه‌گیری اثر DI بر maintainability و تصمیم‌گیری معماری
تگ‌ها: Architecture Decision Clean Architecture Code Quality Dependency Injection Dependency Injection Container Dependency Management Design Patterns Inversion of Control Modular Design Refactoring Software Architecture SOLID Technical Debt Testability تزریق وابستگی

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.