1. 2

  2. 1

    “Value object” is a contradiction in terms. Objects have a physical identity, values don’t. Values can have multiple manifestations, all of which are semantically indistinguishable. An object can only have one manifestation - if you try to create another one, it becomes a separate object in its own right.

    1. 1

      It is, but isn’t. That is, you can use objects carefully to make up for deficiencies in the language–a lack of struct or other mechanisms for defining real value types. The terminology confusion is just another place where object oriented patterns typically confuse rather than explain.