关于领域模型选择充血模型还是贫血模型

我们在做领域模型设计的过程中选用贫血模型

贫血模型:

所有的业务逻辑都不包含在领域对象中而是放在业务逻辑层。把行为和状态分离到不同的对象之中。只有状态的对象作为领域模型、只有行为的对象放在Service层。
这种方式不是严格意义上的面向对象。但具备很强的可实施性。

充血模型:

一个对象是拥有状态和行为的。
充血模型中的困境:实施的过程中程序分层结构被打破。
由于包含动作,很多Domain Model会成为复合体:模型 + DAO 或 模型 + DAO + Service

实施起来难度大。到目前为止很难找到严格按照充血领域模型落地的系统。

你可能感兴趣的:(关于领域模型选择充血模型还是贫血模型)