У меня есть большая сущность. Объект имеет идентификаторы «Id», «Status» и другие. У меня есть репозиторий для этого объекта. Я хочу изменить статус в одном объекте. Должен ли я получить всю Entity, изменить свойство Status и использовать метод сохранения в репозитории или использовать метод ChangeStatus (id, newStatus) в репозитории?DDD репозиторий и сущность
ответ
Возможно, не требуется модель домена. Вы можете попробовать transaction script, которые напрямую используют SQL для обновления базы данных.
Вам нужна модель домена тогда и только тогда, когда вам нужно нанять специалиста, чтобы понять бизнес. В противном случае это просто дорого buzzwords driven development.
И, кстати, если у вас есть классы сущностей, содержащие данные, которые вам не нужны во время большинства операций, то вы знаете, что вы не определили должным образом context boundaries.
Лучшее определение ограниченного контекста является одним из Эванс:
разделителями применимости той или иной модели. КОНТРОЛЬ КОНКУРСА дает членам команды четкое и общее понимание того, что должно быть последовательным и что может развиваться независимо.
То есть: вы должны разделить экспертные знания предметной области в контекстах, где каждый член имеет однозначный смысл и ограниченный набор ответственности. Если вы это сделаете, вы получите небольшие типы и модули с высокой степенью сцепления a
Хороший совет, спасибо. – Backs
- 1. DDD, репозиторий и инкапсуляция
- 2. DDD, PHP и репозиторий
- 3. DDD/репозиторий
- 4. DDD - репозиторий на сущность или один на все?
- 5. DDD сущность VS службы
- 6. DDD - дочерняя сущность инкапсуляция
- 7. DDD, внешние данные и репозиторий
- 8. DDD: репозиторий контракт
- 9. Репозиторий или ServiceAgent в DDD
- 10. DDD: нормально ли вводить репозиторий в объект?
- 11. DDD. Прочитать непосредственно из репозитория или использовать сущность?
- 12. Как создать репозиторий Сущность, имеющая массив частей
- 13. DDD: добавление сущности в репозиторий и исключения для ручной работы
- 14. DDD и сервисные агенты
- 15. Совокупные корни и хранилище в DDD
- 16. DDD - Building Repositories
- 17. DDD: подклассы и корневые объекты
- 18. DDD, Заполнители и Сущности
- 19. DDD-репозитории и REST
- 20. DDD и конфигурация
- 21. DDD: Агрегаты и субагрегаты
- 22. DDD: Сущность технически, но выглядит как объект ценности?
- 23. DDD: Может ли сущность иметь атрибуты примитивных типов данных?
- 24. Сущность, полученная из webservice: как интегрироваться в DDD-модель?
- 25. Rest API и DDD
- 26. DDD: наследование и транзакции
- 27. DDD Entity и его идентификатор
- 28. DDD, Заполнители и Repos
- 29. DDD и асинхронные репозитории
- 30. DDD совокупные корни и сущности
Первый. ChangeStatus (id, newStatus) в репозитории делает сущность бессмысленной. – Hippoom
Я имею в виду, используя ChangeStatus (id, newStatus) в репозитории. Я не получаю целую Entity, строящую ее из многих таблиц, я просто изменяю одно свойство. – Backs
Но бизнес-правило просачивается в слой сохранения. – Hippoom