
ddd
文章平均质量分 57
痴迷的小小工匠
在繁碌的生活中,做一个小小工匠,痴迷其中
展开
-
DDD 领域建模
在 DDD 领域建模和系统建设过程中,有很多的参与者,包括领域专家、产品经理、项目经理、架构师、开发经理和测试经理等。对同样的领域知识,不同的参与角色可能会有不同的理解,那大家交流起来就会有障碍,怎么办呢?因此,在 DDD 中就出现了“通用语言”和“限界上下文”这两个重要的概念通用语言在事件风暴过程中,通过团队交流达成共识的,能够简单、清晰、准确描述业务涵义和规则的语言就是通用语言。限界上下文我们知道语言都有它的语义环境,同样,通用语言也有它的上下文环境。为了避免同样的概念或语义在不同的上下原创 2021-09-13 15:03:39 · 476 阅读 · 0 评论 -
实体和值对象
实体是什么在 DDD 中有这样一类对象,它们拥有唯一标识符,且标识符在历经各种状态变更后仍能保持一致。对这些对象而言,重要的不是其属性,而是其延续性和标识,对象的延续性和标识会跨越甚至超出软件的生命周期。我们把这样的对象称为实体。在 DDD 不同的设计过程中,实体的形态是不同的1,实体的业务形态在战略设计时,实体是领域模型的一个重要对象。领域模型中的实体是多个属性、操作或行为的载体,在事件风暴中,我们可以根据命令、操作或者事件,找出产生这些行为的业务实体对象;2,实体的代码形态在原创 2021-09-08 16:28:16 · 4656 阅读 · 0 评论 -
限界上下文
请先思考两个问题:1,为什么要提出限界上下文的概念(也就是说除了解决交流障碍这个广义的原因,还有更具体的吗)?2,限界上下文在微服务设计中的作用和意义是什么?为了更好地理解限界上下文,回答这两个问题,我们先从通用语言讲起。怎么理解通用语言这个概念呢?在事件风暴过程中,通过团队交流达成共识的,能够简单、清晰、准确描述业务涵义和规则的语言就是通用语言。也就是说,通用语言是团队统一的语言,不管你在团队中承担什么角色,在同一个领域的软件生命周期里都使用统一的语言进行交流。那么,通用语言原创 2021-09-06 16:45:24 · 826 阅读 · 0 评论 -
“子域”和“限界上下文”
在DDD中包括问题域和解决方案域两个不同的维度。问题域主要从业务视角来考虑,完成从领域到子域的分解,而解决方案域则主要从技术实现的角度,通过划分限界上下文和采用DDD战术设计完成微服务拆分和落地。“子域”和“限界上下文”这两个概念分别从不同的视角,构建起了DDD 处理业务复杂度的根基。个人认为“子域”和“限界上下文”在大多数情况下是一对一或者一对多的映射关系。从实践角度,我们可以这样理解,我们不妨将业务领域的分解拆分为两个阶段:从领域到子域的粗粒度的分解和从子域到限界上下文的技术实现级的分解。有时候企原创 2021-09-06 15:35:36 · 1521 阅读 · 0 评论 -
DDD 的领域、子域、核心域、通用域和支撑域等重要概念
领域就是用来确定范围的,范围即边界,这也是 DDD 在设计中不断强调边界的原因。在研究和解决业务问题时,DDD 会按照一定的规则将业务领域进行细分,当领域细分到一定的程度后,DDD 会将问题范围限定在特定的边界内,在这个边界内建立领域模型,进而用代码实现该领域模型,解决相应的业务问题。简言之,DDD 的领域就是这个边界内要解决的业务问题域。...原创 2021-09-06 15:02:08 · 1495 阅读 · 0 评论