贫血和充血模型的比较之我见->有兴趣的朋友进来参与讨论
今天在jdon看到一片关于领域模型的文章,心里总结了一下
下面是个人观点!
贫血模型是对OO的非常经典的诠释!数据交给s/g,业务全部交给业务对象来完成。耦合度很低,逻辑清晰,重构空间大!而且在业务逻辑上事务控制的关注点也小!但是也很明显,业务对象做的事情实在太多了,在领域对象上这个叫做超职责。s/g和业务对象分工虽然明确但工作量截然不同, 也就是说这个对象的职责过于复杂,在一定程度上背离了细力度的oo模型原则。
充血模型我个人认为是可取的!
1:把一部分有针对性的简单逻辑交给s/g去完成,把业务对象向轻量级转换,但是这里就存在了一个设计上的问题!业务并不是完全由业务对象去完成,2者之间的职责就不明确了,同时事务的控制范围也要扩展到s/g这一层上来,整个系统的模块之间就没有明确界限,理解上来存在门槛问题!但是就设计上来说,这是一种进步!只是团队开发的今天,充血模型在推行上存在障碍!
[该贴被zuly于2007年04月05日 10:36修改过]