- Data Domain
- 失血
- DO和DAO无业务逻辑,纯数据
- 优点
- 优点是简单
- 缺点
- 肿胀业务代码难以维护
- 无法应对频繁更改的需求
- 贫血
- DO中有固有行为(如DAO),Spring生态的引导
- 优点
- 层次清楚,各层单身依赖
- 少量业务逻辑应用,使用自然
- 开发迅速,易于理解
- 缺点
- 无法良好应对非常复杂的逻辑和场景
- 充血
- DO中有业务逻辑
- 优点
- 更符合OO原则(单一职责)
- Service层很薄,无DAO或与DO双向依赖
- 缺点
- 职责不好划分,开发者水平要求高
- 模型中包含大量操作,实例化增加消
- 胀血
- 无Service,全部逻辑放DO
- 优点
- 简化分层架构
- 符合OO
- 缺点
- 无Service,授权很多非此模型逻辑,模型不稳定难维护