草庐IT

DDD碎片记录 05. 充血模型的优点

订单充血模型设计图充血模型的概念将领域模型的原貌直接转换为程序中领域对象的设计,这时,各种业务操作就不再在服务中实现了,而是在领域对象中实现,如【订单充血模型设计图】所示,在程序设计时,既有父类的订单,又有子类实物订单,虚拟订单。并且,在领域对象中的方法,也同样保留到了程序设计的实体对象中,这样通过继承,虽然实物订单,虚拟订单都有订单履约,但实物订单的履约与虚拟订单的履约是不一样的。虽然在充血模型中也有订单service,里面也有订单履约方法,但是充血模型的service只干一件特别简单的事,那就是在接收到用户的请求后,就直接去调用实体对象中的相应方法,其他的什么都不干。这样订单service

DDD碎片记录 03. 贫血模型与充血模型

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

DDD碎片记录 03. 贫血模型与充血模型

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