ویرگول
ورودثبت نام
وحید چشمی
وحید چشمیســلام، من وحید هستم، چند سالی هست که دستم رو کیبورده و کد میزنم. دوست دارم چیزی که تجربه میکنم رو با شما به اشتراک بزارم.https://youtube.com/@devlife013
وحید چشمی
وحید چشمی
خواندن ۱ دقیقه·۵ سال پیش

پیاده سازی DDD در NET5. (بخش اول - مقدمه)

در سالهای اخیر Entity Framework پیشرفتهای چشمگیری داشته و ویژگی های بسیار زیادی رو برای پیاده سازی Domain Model های rich و پیاده سازی دامینهایی با encapsulation بسیار بالا عرضه کرده.


قبل از شروع این دوره پیشنهاد میکنم تا در مورد موارد زیر تسلط نسبی داشته باشید:

  • C#
  • EF (Entity Framework)
  • DDD (Domain Driven Design)

اگر در نسخه های قبل سعی کرده باشین که DDD رو با استفاده از EF پیاده سازی کنید، شاید با چالشهایی روبرو شده باشین، اما به لطف توسعه های اخیر در EF Core میشود گفت که پیاده سازی DDD بسیار کاربردی تر شده است.

در این مقاله خواهید آموخت که چگونه مدل خود را پیاده سازی کنید بدون اینکه به Encapsulation دامین شما آسیبی برسد، همچنین به جزئیات و قدم به قدم شروع به پیاده سازی Rich Domain Model میکنیم و در طول مسیر خواهید دید که چگونه EF Core بصورت داخلی کار میکند و از چه ویژگی های از اون باید بهره ببرید.

این مقاله به بخشهای زیر تقسیم بندی خواهد شد:

1- قوانین Encapsulation و SoC (Separation Of Concern) و چرا این دو قانون بسیار مهم هستند.

2-پیاده سازی یک برنامه و نحوه استفاده از روابط many‑to‑one ، many-to-many , one-to-one و many-to-one

3-پیاده سازی Base Entity Class

4- استفاده از Lazy Loading و eager loading

5- استفاده از Backing Field برای پنهان سازی عملیات و نحوه استفاده از اون در Collection

6- استفاده از Value Object



برنامه نویسیcdddشی گرایی
۰
۰
وحید چشمی
وحید چشمی
ســلام، من وحید هستم، چند سالی هست که دستم رو کیبورده و کد میزنم. دوست دارم چیزی که تجربه میکنم رو با شما به اشتراک بزارم.https://youtube.com/@devlife013
شاید از این پست‌ها خوشتان بیاید