تصمیم گیری در رابطه با جایگاه کد در Domain Driven Design #3 را در این قسمت از وبسایت آموزش برنامه نویسی پرووید دانلود کنید.

تصمیم گیری در رابطه با جایگاه کد در Domain Driven Design #3

در Domain Driven Design چنین کدهایی را در درون یک اپلیکیشن یا Aggregate قرار نمیدهیمِ این کدها را در درون کلاس های جدا شده ای به اسم Domain Service قرار میدهیم. نکته ای که باید بدانید این است که متد های درون کلاس های Domain Service به شکل بسیار تصادفی سازماندهی می‌شوند. به عبارت دیگر هیچ اصلی برای سازماندهی کد های درون Domain Service و اینکه چه متدی در آنجا قرار بگیرد یا چه متدی در درون Domain Service قرار نگیرد وجود ندارد. بدون شک کلاس‌ ها و متدهایی که اغلب در کنار هم استفاده می شوند یا متد هایی که از روال های یکسانی استفاده می کنند باید در درون یک پروژه یکسان قرار بگیرند. به طور کلی هر اصلی که برنامه نویس برای سازماندهی Domain Service ها استفاده می کند می‌تواند به عنوان یک مبنای مناسب برای تقسیم کردن کد در چندین Domain Service استفاده شود.

کدهای مربوط به داده

یک مورد خاص از پروژه هایی که شبیه به Domain Service هستند Repository است. کلاس و کلاس هایی که مسئول به روز رسانی و بازیابی اشیا از بانک های اطلاعاتی هستند. دقت کنید که Aggregate ها Storage Agnostic هستند. به عبارت دیگر در رابطه با اینکه چگونه ساخته می شوند و ذخیره می شوند هیچ اطلاعاتی ندارند. برای ساده تر کردن توسعه Repository ها دو توصیه ی طراحی در Domain Driven Design مطرح می‌شود.

دیدگاهتان را بنویسید

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