Страница 1 из 1

VO, нужно ли обобщать?

Добавлено: 2018.02.04, 14:49
Bio man
Подскажите такой момент.
Как происходит на практике работа с VO, следует ли общие по смыслу VO выносить за пределы сущности или контекста?
Например, VO Email может быть не только у юзера, так нужно ли его вынести, или все-же оставить у юзера, а для другой сущности создать собственный VO?

Re: VO, нужно ли обобщать?

Добавлено: 2018.02.04, 15:00
zelenin
можно, нужно выносить.

Re: VO, нужно ли обобщать?

Добавлено: 2018.02.04, 16:02
Bio man
А в доменные события лучше передавать VO вместо сущности?
Например, событие Created, передать туда ID или саму сущность?

Re: VO, нужно ли обобщать?

Добавлено: 2018.02.04, 17:47
zelenin
в зависимости от требований - id, изменения либо копию сущности (догадаешься почему копию?).

Re: VO, нужно ли обобщать?

Добавлено: 2018.02.04, 18:15
Bio man
Ну собственно, что бы минимизировать побочные эффекты склонялся в сторону передачи VO, но с копией сущности тоже вариант (хотя, могут быть кейсы, когда нужно будет писать свою логику клонирования).
Да что там догадываться. Для того, что бы в обработчики попала нужная версия сущности. Если передавать по ссылке, то, в случае с отложенными событиями, во все обработчики придет последняя версия сущности.