مسیر یادگیری Domain Driven Design (DDD)
رویکرد طراحی نرمافزار با محوریت دامنه کسبوکار و زبان مشترک تیم (Ubiquitous Language).
7 مرحله
- 1.
Domain-Driven Design (DDD) چیست؟
رویکردی برای طراحی نرمافزار که دامنه کسبوکار و زبان مشترک بین توسعهدهنده و متخصص کسبوکار (Ubiquitous Language) را مرکز طراحی قرار میدهد.
~10 ساعت - 2.
زبان مشترک و طراحی استراتژیک
مفهوم زبان مشترک بین توسعهدهندگان و متخصصان کسبوکار و نقش آن در طراحی استراتژیک Domain-Driven Design را معرفی میکند.
~3 ساعت - 3.
مرزبندی دامنه با Bounded Context
چگونگی تقسیم یک دامنه بزرگ به Bounded Contextهای مستقل با مدلهای داده و زبان مخصوص به خود را آموزش میدهد.
~4 ساعت - 4.
Entity در برابر Value Object
تفاوت Entity دارای هویت پایدار با Value Object غیرقابلتغییر و بدون هویت را با مثالهای عملی نشان میدهد.
~3 ساعت - 5.
طراحی Aggregate و Aggregate Root
نقش Aggregate Root در حفظ تغییرناپذیرها (Invariant) و کنترل مرز تراکنشی یک خوشه از Entity ها و Value Object ها را شرح میدهد.
~4 ساعت - 6.
اطلاعرسانی با رویدادهای دامنه
استفاده از Domain Event برای اطلاعرسانی وقوع یک اتفاق مهم کسبوکاری درون یا بین Aggregateها را توضیح میدهد.
~3 ساعت - 7.
Repository و Domain Service
نحوه انتزاع دسترسی به Aggregateها از طریق Repository و پیادهسازی منطقی که به یک Entity واحد تعلق ندارد در Domain Service را بررسی میکند.
~3 ساعت
