一、前言 断断续续的也有在闲余时间接触领域驱动设计的相关知识,因为目前在工作中更多的还只是一名 crud boy,因此目前也只是对其中的某些知识点有知晓,实际使用的比较少,仅此而已。因此,趁着这个春节假期,整理了一下自己的 github 帐号,同时结合自己定的学习计划以及自己的期望发展方向,决定 ...
目录 概述 何为聚合 演化案例 发现实体关系 开始划分边界吧 选取一个聚合根 通过聚合根保护你的内部对象 聚合的一些特性 通过ID引用 聚合真的是不变的吗 小的聚合 一致性 总结 概述 在前几篇的博文中,我们已经学习到了如何运用实体和值对象。随着我们所在领域的不断深入,领域模型变得逐渐清晰,我们已经建立了足够丰富的实体和值对象。但随着实体和值对象的数量逐渐增多,它们之间的关系也显得越来越复杂:实 ...
2019-12-18 18:16 27 4019 推荐指数:
一、前言 断断续续的也有在闲余时间接触领域驱动设计的相关知识,因为目前在工作中更多的还只是一名 crud boy,因此目前也只是对其中的某些知识点有知晓,实际使用的比较少,仅此而已。因此,趁着这个春节假期,整理了一下自己的 github 帐号,同时结合自己定的学习计划以及自己的期望发展方向,决定 ...
将介绍领域驱动设计(DDD)战术模式中另一个常见且非常重要的概念 - 实体。相对战术模式中其他的一些概念( ...
概述 这是关于领域驱动设计的一个系列博文,目的是在学习之后能够使用领域驱动设计的知识来开发应用。 领域驱动设计是目前比较火的概念,其实早在2004年的时候 Eric Evans 就提出了领域驱动设计。但是直到后期才被大家所认识,特别是随着现在微服务的兴起,许许多多的人意识到了领域驱动设计的好处 ...
领域驱动设计(DDD)的过程中,我们往往会遇到多个领域对象相互交互的情况。比如聚合根A在执行某操作之前需 ...
都给了领域服务 总结 小彩蛋 概述 本文将介绍领域驱动 ...
对实体与值对象等进行关联设计后,就应该进行聚合的划分以及聚合根的确定。 首先我们需要明确为什么需要进行聚合的划分? 原来我们的系统对领域划分的最小单位通常是模块,比如客户信息管理模块、雇员信息管理模块。但模块的划分对于设计来说,还是显得粒度太粗。 一.聚合与聚合根 1.定义了对象之间清晰 ...
通过一个实例来说明如何划分聚合与聚合根 场景:一个下订单的业务,一个订单必须有相应的客户信息,订单下有订单项,每个订单项必须有相应的产品信息,产品有分类的信息。 1.根据这个基本的需求,我们初步确定的实体、值对象与关联关系为(这里采用EF的Model First): 2.经过业务深入分析 ...
这个实例主要说明一个论坛发帖与回复的场景。 一般大家的理解是回复必须依赖与帖子,并且回复是没有单独存在的必要,并且帖子与回复通常具有一些不变性约束规则,比如发布一个回复,在帖子中同时增加一次回复次数;回复过的帖子就不再允许删除等,所以一般理解是帖子与回复属于一个聚合,帖子是聚合根,回复是聚合中 ...