将业务领域模型转换为程序设计
一般有2种设计思路:贫血模型,充血模型
所谓贫血模型,就是在软件设计中有很多POJO对象,他们除了get/set方法,基本没有任何业务逻辑。
vip会员的贫血模型的设计图如vip会员的贫血模型的设计图所示,在领域模型中,有vip会员的领域对象,该对象除了有一堆属性之外,还有会员打折,会员福利,会员特权等方法。
如果将该领域模型按照贫血模型设计,就会设计一个vip会员的实体对象与service。
实体对象包含该对象的所有属性,以及这些属性包含的数据,然后将所有的方法都放入service中,再调用他们的时候,必须将领域对象作为参数进行传输。
这样的设计将领域对象中的方法,以及方法在执行过程中所需的数据,割裂到两个不同的对象中,打破了对象的封装性。
网友评论