Домен Управляемый Дизайн - PullRequest
2 голосов
/ 16 июля 2011

Я ищу разъяснения по следующим 2 пунктам в отношении DDD.

1.Может ли объект домена вызывать хранилище?

2.Может ли доменная служба вызвать хранилище?

Спасибо

Редактировать

Нашел пакет документов, подробно описывающих слои DDD, и это то, что он сказал;

Кроме того, хотя хранилища, как правило, используются только на уровне приложений, также можно создавать исключения и выполнять запросы, вызывая хранилища из служб домена по мере необходимости. Но этого следует избегать в максимально возможной степени, чтобы достичь однородности в наших разработках.

Ответы [ 2 ]

2 голосов
/ 17 июля 2011

Я бы не стал создавать объектную сущность для ссылки на репозиторий. «Репозиторий» редко является частью домена и привнесет технические проблемы в модель вашего домена. Я обнаружил, что репозитории лучше всего подходят для уровня служб приложений.

2 голосов
/ 16 июля 2011

Я не знаю таких жестких и быстрых правил. Все что угодно может быть сделано.

Но вот как я это делаю.Я не знаю, квалифицируется ли он как DDD:

  1. Обычно доменные объекты не вызывают репозитории.Им не нужно знать, сохраняются они или нет.
  2. Сервисы организуют доменные объекты и репозитории для выполнения сценариев использования.Они владеют единицами работы и управляют транзакциями.
...