Обновить
1
0
Игорь@psychotv

Пользователь

Отправить сообщение

Доменный объект — инкапсулирует инварианты своего состояния (Order не может быть с отрицательной суммой)

Как определить "свое состояние" у сущности, которая участвует в нескольких процессах? Это у процесса есть "контекст" - ограниченное предыдущее состояние "подсистемы" достаточное для выполнения процесса и инварианты окончания процесса. У сущности ничего этого нет.

а в попытке впихнуть туда ВСЮ логику

А как определить - вот эта логика она "уже вся логика" или "еще не вся логика"?

SRP действительно сам себя принуждает — сложность выдавливает логику наружу, из общего в частное.

но SRP это не про абстрагирование, не про общее и не про частное. SRP это про единственный источник причин для изменения.

Интересная тема!


Ищу ответ на один простой вопрос - а где границы? До какого момент "нечто" это доменный объект, с какого момента он сервис и когда становится доменом?

Доменный объект очень удобная штука, не надо думать над композицией, можно свалить всю логику в доменный объект и назвать это rich model. Но во время длинного пути превращения доменного объекта в целый домен, все мелкие доменные объекты, волшебным образом превращаются в DTO без поведения. Поведение само собой "уезжает" в доменные сервисы. Имхо SRP на "длинных дистанциях" само принуждает себя соблюдать...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Фулстек разработчик
Старший
От 400 000 ₽
C#
Microsoft SQL Server
.NET
Разработка программного обеспечения
Visual Studio
Git