О предметно-ориентированном проектировании (Domain-Driven Design)¶
DDD, описанное в книге Эрика Эванса Domain-Driven Design — Это более узкая разновидность ООП, предназначенная для разаботки сложной бизнес-логики.
В DDD есть стратегические шаблоны, например поддомены и концепция изолированного контекста.
Также в DDD есть тактические шаблоны, которые служат строительными блоками для доменных моделей. Например,
- Сущность — объект, обладающий устойчивой идентичностью. Две сущности, чьи атрибуты имеют одинаковые значения — всё равно разные сущности.
- Объект значений — объект, представляющий собой набор значений. Два объекта с одинаковым набором значений взаимозаменяемы.
- Фабрика — объект или метод, реализующий логику создания объекта, которую ввиду сложности не стоит размещать в конструкторе. Фабрика также может скрывать конкретные классы, экземпляры которых она создаёт.
- Репозиторий — объект, предоставляющий доступ к постоянным сущностям и инкапсулирующий механизм доступа к БД.
- Сервис — объект, реализующий бизнес-логику, которой не место внутри сущности или объекта значений.
Также есть еще одна концепция, которой редко пользуются. Однако она чрезвычайна полезна при разработке микросервисов. Речь об агрегатах.
Последнее обновление :
25 мая 2023 г.
Дата создания : 27 июля 2022 г.
Дата создания : 27 июля 2022 г.