DDD碎片记录 04. 贫血模型的缺陷
2022-04-13 本文已影响0人
黑铁大魔王
订单贫血模型设计图
领域模型中的订单通过继承得到实物订单与虚拟订单。
该领域模型按照贫血模型设计,会分别产生实物订单实体对象与实物订单service,和虚拟订单实体对象与虚拟订单service。
实物订单实体对象只能调用实物订单service,如果调用了虚拟订单service,程序就会出错了。
因此,为了避免这种情况,还需要一个客户端系统去判断当前的订单实体对象是实物订单还是虚拟订单。这时,系统变更就没有那么灵活了。
比如,现在需要在原有基础上再增加一个服务订单,那么不仅要增加一个实体对象与service,还要修改客户端程序的判断,系统变更成本就会提高。