到目前为止,我知道实体对象有一个 ID,而值对象没有,但在最常见的例子中,你有一个附加了地址值对象的个人实体。创建单独的地址对象而不是仅将地址属性保留在 Person 实体中的最大优势是什么?
最佳答案
除了已经提到的东西,Greg Young由于它们是不可变的,因此您可以在创建时验证它们,而不必再担心验证。如果状态不能改变,那么你知道它总是有效的。
关于domain-driven-design - 在 DDD 中,值对象的实际优势是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/598832/