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