Глосарій

Value Object

Value Object — об'єкт, що представляє концепт через своє значення, а не через ідентифікатор. Два Value Objects рівні, якщо рівні їхні поля. Завжди незмінний: замість мутації — повертається новий об'єкт.

Приклади

Money, Email, PhoneNumber, DateRange, Coordinates — концепти без власної ідентичності. Money(100, 'USD') рівне іншому Money(100, 'USD').

Переваги

Vs Entity

Entity має ідентифікатор і може змінюватись (User з id=42 залишається тим самим User, навіть якщо змінилось ім'я). Value Object не має id — ідентичність = значення.