learning_record_doc/设计模式/设计思想/领域模型.md

33 lines
1.3 KiB
Markdown
Raw Permalink Normal View History

2023-03-14 10:32:03 +08:00
# 领域模型
## 失血模型
业务逻辑和应用逻辑都放到服务层中
+ service 肿胀的服务逻辑
+ model只包含get set方法
+ dao :数据持久化
## 贫血模型
贫血模型中包含了一些业务逻辑,但不包含依赖持久层的业务逻辑。这部分依赖于持久层的业务逻辑将会放到服务层中。可以看出,贫血模型中的领域对象是不依赖于持久层的
+ service :组合服务 也叫事务服务
+ model除包含get set方法还包含 单服务 又叫原子服务
+ dao数据持久化
## 充血模型
service :组合服务 也叫事务服务
modelget set方法 单服务 又叫原子服务,含数据持久化的逻辑
充血模型中包含了所有的业务逻辑包括依赖于持久层的业务逻辑。所以使用充血模型的领域层是依赖于持久层简单表示就是UI层->服务层->领域层<->持久层
## 涨血模型
胀血模型就是把和业务逻辑不想关的其他应用逻辑(如授权、事务等)都放到领域模型中。我感觉胀血模型反而是另外一种的失血模型,因为服务层消失了,领域层干了服务层的事,到头来还是什么都没变。
modelget set方法 单服务又叫原子服务 ,数据持久化的逻辑 还包含组合服务,又叫事务服务