@شن و ماسهسانديپ جاگتاپ
رمزگذار معمار در ThoughtWorks. جاوا ، کوتلین ، Nodejs ، Clojure ، Ruby ، Scala ، C #.
آیا برای شما دشوار بوده است که مرزهای ریز سرویس های سیستم خود را مدلسازی کنید؟ آیا به دلیل پیچیدگی فنی پایگاه کد خود ، سرعت خود را کاهش داده اید؟ آیا تیم شما روی انگشتان پای یکدیگر قدم گذاشته است؟
اگر پاسخ به هر یک از سوالات یا بسیاری از آنها مثبت باشد ، Domain Driven Design احتمالاً برای تیم شما مفید خواهد بود!
Domain Driven Design یا DDD چیست؟
Domain-Driven Design یک رویکرد زبانی و دامنه محور برای طراحی نرم افزار برای دامنه های مشکل پیچیده است.
این شامل خرد جمعی از صنعت نرم افزار ، مجموعه ای از الگوها ، اصول و روش هایی است که تیم ها را قادر می سازد تا هنگام ساخت نرم افزاری که پیچیدگی را در هر دو فضای فنی و تجاری مدیریت می کند ، بر آنچه در موفقیت کسب و کار است تمرکز کنند.
این اصطلاح توسط اریک ایوانز در کتاب اصلی خود “طراحی دامنه محور: مقابله با پیچیدگی در قلب نرم افزار”نوشته شده در سال 2003 و بسیار جلوتر از زمان خود بود!
این موضوع با دوران معماری ریز سرویس ها بسیار مرتبط شد. این در سال 2003 برای طراحی یکپارچه مدولار و امروز نیز مرتبط بود! یکپارچه مدولار موضوعی برای وبلاگ دیگر من است!
الگوهای تاکتیکی و استراتژیک DDD
ما از مثال خرده فروشی استفاده خواهیم کرد …