سؤال

أنا فقط بدأت في DDD، وأواجه بعض المشاكل في معرفة كيفية استيعاب الطبيعة العلائقية لبياناتي. لدي ما أعتقد أنه سيعتبر جذري التجمع، لكن التجميع لديه أيضا مجموعه. لا ترغب في انتهاك قانون ديميتر، وأنا أتساءل عما إذا كنت أفكر في هذا الخطأ وآمل أن تقدم بعض خبير DDD بعض البصيرة.

جذر التجمع الخاص بي هو بلدي Account كائن، الذي لديه إجمالي العديد من AccountElement الكيانات، والتي هي أنفسهم التجمعات المنطقية للفرد ProductComponent جهات.

أ AccountElement خارج سياق Account ليس له معنى، لذلك أنا مرتاح مع استنتاجي أن Account الكائن هو جذر إجماليي، وأتوقع هذا الكيان الذي يمتلك إجمالي Elements خاصية. انها ال ProductComponent جمع لي في حيرة من أمري. هذا المجموع ليس له معنى خارج AccountElement, ، و حقا ليس له معنى خارج Account.

لا أعتقد أنني يجب أن أكون الوصول إلى الفرد ProductComponent الكائنات عن طريق التنقيط في طريقي إليها، مثل:

var reference = account.Elements(0).ProductComponents(0).ReferenceCode;

ولكن في الوقت نفسه لا معنى له (من منظور المجال) الوصول إلى ProductComponent مباشرة من Account شخصية.

أنا متأكد من أن هذا أمر صعب للغاية فهمه دون معرفة من نطاقي، لكنني آمل أن يكفي الحصول على بعض الملاحظات الجيدة.

هل كانت مفيدة؟

المحلول

المادة روبرت مرتبطة أنها جيدة. أود أن أضيف أنه إذا كان ProductComgonent موجودا فقط في سياق المساءلة والمحاسم الموجودة فقط في سياق الحساب، فمن تلقي ProductComponent في سياق الحساب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top