Простой вопрос: должен ли репозиторий проверять сущность перед ее сохранением? Подтвердить = проверить, соответствуют ли все значения правилам (например, имя содержит ‹ 50 символов и т. д.).
DDD: Должен ли репозиторий проверять объект перед его сохранением?
Ответы (1)
В DDD каждый Агрегат должен нести ответственность за свою достоверность. Никогда не должно быть объекта в недопустимом состоянии. то есть каждый агрегат должен отвергать любую мутацию, которая может привести к недопустимому состоянию.
Цитата из отличной статьи на эту тему Проверка в мире DDD Джим Богард:
Проще говоря, если мы контролируем операционную часть уравнения, с какой стати мы позволяем нашим сущностям переходить в недопустимое состояние? Жизнь станет намного сложнее, если мы начнем использовать свойства «IsValid» для наших сущностей.
person
Dennis Traub
schedule
16.10.2014