Dojo
最新
最佳
搜索
订阅
解道Jdon
架构设计
领域驱动
DDD介绍
DDD专辑
战略建模
领域语言UL
领域事件
商业分析
工作流BPM
规则引擎
架构师观点
数据工程
产品经理
系统思维
微服务
微服务介绍
微服务专辑
模块化设计
SOA
API设计
clean架构
SpringBoot
分布式事务
分布式架构
Kubernetes
DevOps
编程设计
GoF设计模式
模式专辑
面向对象
函数式编程
编程语言比较
编程工具比较
形式逻辑
前端编程
Reactive编程
Jdon框架
Rust语言
ChatGPT
Web3
模因梗
幽默梗
程序员吐槽
面试技巧
Java入门
数字化转型
认知偏差
道德经
GitHub工具
更多话题
关于DDD中的service。
08-07-08
xmuzyu
DDD一书中说:服务其实有两种服务,一是领域层服务;二是应用层服务.他们的不同点是:应用层上的服务没有任何业务含义,领域层的服务包括了基本的业务逻辑。
一下引用banq老师在(对JiveJdon3中services设计的疑问)http://www.jdon.com/article/33948.html
的一段话:
领域层服务容易和领域模型行为,很多人容易把领域模型行为也就是业务核心放入领域层服务中,我前面讨论的就是这种情况,虽然领域层服务控制了领域模型,但是不代表业务核心就要放入领域层服务,而应该放入领域模型中,这两者区别也有些鱼和水的区别,服务是
SOA
等
架构
,而领域模型则应该和架构无关,只和业务有关,脱离当前架构SOA也可以生存,比如移植到
EDA
架构也应该可以,如果你到EDA下,由于没有Service,而你的业务核心在Service,那你不是要重写软件了?
领域层服务也是领域模型的一种,我觉得应该可以放业务逻辑,而应用层服务里不能放业务逻辑。如果领域层服务里没有业务逻辑,那么业务逻辑放哪里呢?DDD中领域模型只有三种元素,实体,值对象以及服务(这里的服务应该是领域层服务吧呵呵),那么业务逻辑应该放哪里?请各位
DDD
高手指点。
banq
2008-07-09 08:21
是领域层,由实体和值对象以及规则过滤器等组成
bmrxntfj
2008-07-10 12:35
lz的疑问,很多都是没有理解“规则,过滤”的概念。
这些不能把他们直接写到Service中,比如:if什么什么,然后entity.什么。这里就应该把隐式概念转化为显示概念。定义出那个规则。虽然领域层服务控制了领域模型,但是不代表业务核心就要放入领域层服务,而应该放入领域模型中
xmuzyu
2008-07-10 14:58
哦,多谢指导。是我理解有误。多谢。
DDD领域驱动设计
DDD领域服务