首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >领域驱动设计DDD-见感思行

领域驱动设计DDD-见感思行

作者头像
用户9976701
发布2025-11-12 18:12:21
发布2025-11-12 18:12:21
2360
举报

DDD 分层架构演进

DDD 领域划分

工作流程与方法

序号

提炼一个标题

见(可以摘录原文,也可以把见到的现象、内容、观点提炼归纳,用自己的话表述,备注来源)

感(结合自身案例解释知识,讲清楚这个知识点。)

思(主要是找知识和知识之间的联系,有对比和冲突,你的思考会更有深度)

行(经过见感思,你将如何行动。)

备注

1

ddd,中台,微服务之间关系

1.中台的作用? 作为中台,需要将通用的可复用的业务能力沉淀中台业务模型,实现企业级能力复用。 2.ddd,微服务和中台之间的关系? 中台的本质是业务模型,微服务是业务模型的系统落地,ddd是一种设计思想,它可以同时指导中台业务建模和微服务设计。ddd强调领域模型和微服务设计的一体性,先有领域模型然后才有微服务。

1.ddd,微服务和中台之间的关系

2

领域驱动设计:微服务设计为什么要选择DDD?

软件架构模型的演进? 1.第一阶段是单机架构 2.第二阶段集中式架构 3.第三阶段分布式微服务架构 为什么要选择DDD? 在单机和集中式架构这两种模式下,软件无法快速响应需求和业务的迅速变化,此时产生了微服务架构,微服务架构在软件件扩展性,弹性伸缩能力,小规模团队敏捷开发等方面带来了便利,但是微服务在实践过程中产生了不少争论和疑惑,如微服务粒度应该多大,如何拆分和设计,微服务的边界在哪里等等。作者认为微服务拆分困境的产生的根本原因是不知道业务或者微服务的边界到底在什么地方,而DDD核心思想是通过领域驱动设计方法定义领域模型,从而确定业务和应用的边界,保证业务模型与代码模型的一致性。

DDD到底为何方神圣,拥有什么神器? DDD是一种处理高度复杂领域的设计思想,它试图分离技术实现的复杂性,并围绕业务概念构建领域模型来控制业务的复杂性,以解决难以理解,难以演进的问题。DDD不是架构而是一种架构设计方法论,它通过边界划分将复杂业务领域简单化,帮我们设计出清晰的领域和应用边界,可以很容易的实现架构演进。 DDD包括战略设计和战术设计2部分 战略设计主要从业务视角出发,建立业务领域模型,划分领域边界,建立通用语言的限界上下文,界限上下文可以作为微服务设计的参考边界。 战术设计则从技术视角出发,侧重于领域模型的技术实现,完成软件开发和落地,包括聚合根,实体,值对象,领域服务,应用服务和资产库等代码逻辑的设计和实现。

对一个领域问题不断的划分,直到划分为我们能够快速处理的小问题.

3

DDD如何进行战略设计??

DDD如何进行战略设计? ddd战略设计会建立领域模型,领域模型可以用于指导微服务的设计与拆分。事件风暴是建立领域模型的主要方法,它是一个从发散到收敛的过程,它通常采用用例分析,场景分析和用户旅程分析,尽可能全面不遗漏地分解业务领域,并梳理领域对象之间的关系,这是一个发散的过程。事件风暴会产生很多实体,命令,事件等领域对象,我们将这些领域对象从不同的维度进行聚类,形成聚合,限界上下文等边界,建立领域模型,这就是一个收敛的过程。 用三步来划分领域模型的边界: 1.在事件风暴中梳理业务过程中的用户操作,事件,外部依赖关系等,根据这些要素梳理出领域实体等领域对象。 2.根据实体之间的业务关联性,将业务紧密相关的实体进行组合形成聚合,同时确定聚合中的聚合根,值对象和实体,在下图中,聚合之间的边界是第一层边界,它们在同一个微服务实例中运行,这个边界是逻辑边界用虚线表示. 3.根据业务以及语义边界等因素,将一个或者多个聚合划定在一个限界上下文内,形成领域模型,在这个图里,界限上下文的边界是第二层边界,不同的限界上下文 内的领域逻辑被隔离在不同的微服务实例中运行,物理上相互隔离。

事件风暴何方神圣,如何发起

4

领域,子域,核心域,通用域 和支撑域

(汉语词典)领域是从事一种专门活动或事业的范围,部类或部门。 baidu : 领域具体指一种特定的范围或区域。 领域就是用来确定范围的,范围即边界DDD会按照一定的规则将业务领域进行细分,当领域细分到一定的程度后,DDD会将问题范围限定在特定的边界内,在这个边界内建立领域模型,进而用代码实现该领域模型,解决相应的业务问题。DDD的领域就是这个边界内要解决的业务问题域。 领域可以进一步划分为子领域,把划分出来的多个子领域称为子域,每个子域对应一个更小的问题域或更小的业务范围. 每一个细分的领域都会有一个知识体系,也就是DDD的领域模型。在所有子域的研究完成后,我们就建立了全域的知识体系了。也就建立了全域的领域模型. 领域建模和微服务建设的过程和方法基本类似,其核心思想就是将问题域逐步分解,降低业务理解和系统实现的复杂度。 核心域,通用域和支撑域: 子域可以根据自身的重要性和功能属性划分为三类子域:核心域(决定产品和公司核心竞争力的子域是核心域),通用域(同时被多个子域使用的通用功能子域就是通用域)和支撑域(既不包含决定产品和公司核心竞争力的功能也不包含通用功能的子域,它就是支撑域),区分不同子域在公司内的不同功能属性和重要性,从而公司可对不同子域采取不同的资源投入和建设策略,其关注度也会不一样。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-09-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档