域模型是否按定义不可变?

时间:2012-05-02 22:26:51

标签: domain-driven-design

也就是说,是否存在域模型应该可以在其创建之外进行修改的情况?

2 个答案:

答案 0 :(得分:5)

Value objects通常是不可变的。另一方面,Entities不一定是不可变的。例如,您的域可以拥有订单实体,并且可以添加订单项或更改投放地址。

答案 1 :(得分:1)

与Dmity的答案不同,我假设您的意思是整个模型的设计,而不是运行时的单个实体。

答案是肯定的。事实上,这是域建模的全部要点。商业模式将随着时间而变化(这是不可避免的 - 企业必须适应生存),模型必须发展以匹配它。结合敏捷开发技术的域建模考虑了这一点。诀窍是设计您的域模型,以便它可以发展。