jargon

Design patterns·Modelling the domain

two of them with the same contents are interchangeable, so you never update one — you replace it.

Value object

Also calledvalue type, immutable value

An object defined entirely by its attributes, compared by value and, by convention, immutable: money, a date range, a coordinate, an email address. Immutability plus value equality means it can be shared freely, used as a map key and reasoned about without aliasing. Most of the practical benefit of domain modelling comes from making more things value objects, because each one takes a validation rule out of the calling code and puts it somewhere it cannot be skipped.

Commonly confused with