Перейти к содержанию

О предметно-ориентированном проектировании (Domain-Driven Design)

DDD, описанное в книге Эрика Эванса Domain-Driven Design — Это более узкая разновидность ООП, предназначенная для разаботки сложной бизнес-логики.
В DDD есть стратегические шаблоны, например поддомены и концепция изолированного контекста.
Также в DDD есть тактические шаблоны, которые служат строительными блоками для доменных моделей. Например,

  • Сущность — объект, обладающий устойчивой идентичностью. Две сущности, чьи атрибуты имеют одинаковые значения — всё равно разные сущности.
  • Объект значений — объект, представляющий собой набор значений. Два объекта с одинаковым набором значений взаимозаменяемы.
  • Фабрика — объект или метод, реализующий логику создания объекта, которую ввиду сложности не стоит размещать в конструкторе. Фабрика также может скрывать конкретные классы, экземпляры которых она создаёт.
  • Репозиторий — объект, предоставляющий доступ к постоянным сущностям и инкапсулирующий механизм доступа к БД.
  • Сервис — объект, реализующий бизнес-логику, которой не место внутри сущности или объекта значений.

Также есть еще одна концепция, которой редко пользуются. Однако она чрезвычайна полезна при разработке микросервисов. Речь об агрегатах.


Последнее обновление : 25 мая 2023 г.
Дата создания : 27 июля 2022 г.

Комментарии

Комментарии