آموزش طراحی دامنه محور (Domain Driven Design) و EF Core

تعداد ویدئو 63
زمان دوره 03:38:46
مترجم مرتضی گیتی
دوبلر مرتضی گیتی
سایت منتشر کننده پلورال سایت

آموزش ویدئویی طراحی دامنه محور (Domain Driven Design) و EF Core یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی طراحی دامنه محور (Domain Driven Design) و EF Core حفظ کردن Encapsulation است که با نام اصلی DDD and EF Core – Preserving Encapsulation از شرکت Pluralsight منتشر شده است.

طراحی دامنه محور (Domain Driven Design) چیست؟

طراحی دامنه محور یا همان Domain Driven Design در واقع درک نیازهای واقعی کسب و کار مشتری است. ما باید درباره دامنه های مختلف مانند بانکداری، مخابرات، زنجیره تامین، مراقبت های بهداشتی و… دانش داشته باشیم. بنابراین در اینجا دامنه به معنی دانش کسب و کار درباره صنعت خاص است. به طور مشابه طراحی دامنه محور تمرکز بیشتری نسبت به نیازهای کسب و کار دارد نه به تکنولوژی. برای شروع نوشتن یک سیستم، باید بدانیم که مشتری چه چیزی را مد نظر دارد، در حین فاز اولیه هیچگاه درباره برنامه نویسی و معماری آن فکر نمیکنید. هدف اصلی شما درک تمام شرایط کسب و کار مشتری و چگونگی مدل دامنه مورد نیاز او است.

strategic-domain-driven-design-relationships

بنابراین چیزی که ما به دنبال آن هستیم بحث با مشتری درباره نیازهای کسب و کار او است. Domain Driven Design صرفاً بر اساس این فرضیات برای ترسیم کردن نیازهای کسب و کار در مدل دامنه است. طراحی دامنه محور همه چیز درباره چگونگی طراحی مدل دامنه شماست. به این معنا که هر کلاس دامنه باید یک رابطه مستقیم با آنچه که در دامنه کسب و کار است داشته باشد.

کپسوله سازی (Encapsulation) چیست؟

در برنامه نویسی شی گرا کپسوله سازی و یا encapsulation به معنی گروه بندی کردن داده ها به همراه متدهایی است که بر روی آن داده ها کار می کنند. علاوه بر این این کپسوله سازی به معنی محدود کردن دسترسی مستقیم به برخی از اجزای تشکیل دهنده یک object می باشد.

DDD-and-EF-Core-–-Preserving-Encapsulation

در واقع از encapsulation برای مخفی کردن مقادیر و یا state مربوط به object ها استفاده می شود تا اشخاصی که حق دسترسی مستقیم به آنها ندارند اجازه و امکان انجام چنین کاری را نداشته باشند. درک دقیق و پیاده سازی صحیح کپسول سازی در طراحی شی گرا یک موضوع بسیار بسیار مهم است که باید به آن توجه ویژه شود.

سرفصل مطالب آموزش ویدئویی طراحی دامنه محور (Domain Driven Design) و EF Core

فصل اول: مقدمه دوره آموزشی

  • مقدمه دوره آموزشی

فصل دوم: مقدمه

  • مقدمه
  • بررسی Encapsulation و Separation of Concerns
  • بررسی مثال هایی از اهمیت Encapsulation و Separation of Concerns
  • معرفی برنامه مربوط به این دوره آموزشی
  • جمع بندی

فصل سوم: کار کردن با رابطه‌ های Many-to-one

  • مقدمه
  • بررسی Encapsulation در کلاس DbContext
  • مرور اهمیت Encapsulation در کلاس DbContext
  • حذف کردن Public Setter های مربوط به Property ها
  • مرور اهمیت حذف کردن Public Setter های مربوط به Property ها
  • بررسی انواع Relationship ها
  • بررسی Relationship های Many-to-one و مقایسه ID و Navigation Property ها
  • ریفکتور کردن به سمت Navigation Property ها
  • مرور اهمیت ریفکتور کردن و رفتن به سمت Navigation Property ها
  • جمع بندی

فصل چهارم: کار کردن با Lazy Loading

  • مقدمه
  • انجام Eager Loading بر روی Relationship ها
  • انجام Lazy Loading بر روی Relationship ها
  • ریفکتور کردن و رفتن به سمت Lazy Loading
  • مرور اهمیت ریفکتور کردن و استفاده از Lazy Loading
  • بررسی الگوی Identity Map Pattern
  • اهمیت Identity Map Pattern و Referential Equality
  • انجام Encapsulation برای Equality Comparison
  • معرفی کردن یک کلاس Base Entity
  • مرور اهمیت استفاده از یک کلاس Base Entity
  • جمع بندی

فصل پنجم: Map کردن به Backing Field ها

  • مقدمه
  • معرفی رابطه های One-to-many / قسمت اول
  • معرفی رابطه های One-to-many / قسمت دوم
  • مرور اهمیت رابطه های One-to-many
  • مخفی کردن Collection های پشت Backing Field ها
  • مرور مخفی کردن Collection های پشت Backing Field ها
  • معرفی کردن یک Collection Invariant
  • مرور Collection Invariant مطرح شده
  • حذف کردن یک Item از درون یک Collection
  • مرور روند حذف کردن یک Item از درون یک Collection
  • محدودیتهای اعمال Mapping به Backing Field ها در EF Core
  • جمع بندی

فصل ششم: کار کردن با Object Graph های Disconnected

  • مقدمه
  • بررسی یک Use Case جدید: رجیستر کردن یک Student
  • مرور اضافه شدن قابلیت رجیستر شدن یک Student
  • بررسی متدهای Update و Attach در کلاس DbSet
  • مرور متدهای Add و Update و مقایسه آنها با متد Attach در DbSet
  • انتصاب دادن یک Disconnected Entity به یک Connected Entity
  • مرور انتصاب یک Disconnected Entity به یک Connected Entity
  • جمع بندی

فصل هفتم: Map کردن به Value Object ها

  • مقدمه
  • معرفی یک Value Object: Email
  • محدودیت های EF Core و مبحث Value Conversion
  • معرفی کردن یک Multi-property Value Object
  • بررسی Owned Entity Type های مربوط به Entity Framework Core
  • مرور قابلیت Owned Entity Type ها
  • اضافه کردن یک Navigation Property به یک Owned Entity
  • جمع بندی

فصل هشتم: پیاده سازی Domain Event Dispatcher

  • مقدمه
  • بررسی Domain Event ها
  • پیاده سازی Domain Event ها
  • مرور پیاده سازی Domain Event ها
  • بررسی Relationship های Many-to-many
  • معرفی منابع مفید
  • جمع بندی دوره آموزشی

نقد و بررسی‌ها

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

اولین کسی باشید که دیدگاهی می نویسد “آموزش طراحی دامنه محور (Domain Driven Design) و EF Core”

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

دسته های محصولات

افزودن به سبد خرید