Я пишу приложение с моделью домена в PHP, и мне интересно, какое соглашение об именах я должен принять.
Скажем, у меня есть Customer
, имеющий Address
внутри своего сводного корня.
У меня также есть Product
, имеющий Option
внутри своего сводного корня.
У меня есть две альтернативы:
-
Держите агрегатные корни в корне модели домена:
Customer Customer\Address Product Product\Option
Pro: я могу использовать как
Customer
, так иProduct
в том же пространстве имен
Кон:Customer
должен ссылаться на свой собственныйAddress
какCustomer\Address
-
Группируйте все агрегатные классы в одном и том же пространстве имен, включая корень агрегата:
Customer\Customer Customer\Address Product\Product Product\Option
Pro:
Customer
может ссылаться на свой адрес какAddress
Кон: из моего пространства имен корневых доменов я должен ссылаться:-
Customer
какCustomer\Customer
-
Product
какProduct\Product
-