DDD实战,领域驱动设计
2023-03-20 15:43:10 0 举报
AI智能生成
DDD实战,领域驱动设计
作者其他创作
大纲/内容
概念
战略设计
战术设计
分支主题
图示
DDD是什么
DDD
微服务
解决问题
DDD带来的好处
微服务与DDD结合
领域
过程
核心域
通用域
支撑域
分类
子域
定义上下文的含义
注意
通用语言
定义领域边界
限界上下文
实体
实体和值对象的关系
值对象
理解
5. 多个聚合根据业务语义和上下文一起划分到同一个限界上下文中
如何设计聚合
2. 设计小聚合: 降低由于业务过大导致的聚合重构的可能性.
3. 通过唯一标志引用其他聚合: 聚合之间通过关联外部聚合根id的方式引用
5. 通过应用层实现跨聚合的服务调用
聚合的设计原则
聚合/聚合根
聚合特征
聚合根特征
实体特征
值对象特征
聚合/聚合根/实体/值对象 特征
识别领域事件
微服务内的领域事件
微服务间的领域事件
使用场景
领域事件
参与者
事件风暴的参与者会把自己的想法和意见写在即时贴上
蓝色: 命令
绿色: 实体
橙色: 领域事件
黄色: 补充信息
可用不同的颜色的贴纸区分领域行为
材料
关注点
事件风暴的准备工作
事件风暴
DDD的核心概念
用户接口层
应用层
领域层
基础层
DDD四层架构
每层只能与其下方的层发生耦合
原则
微服务架构的演进
最外用户层 -> 应用服务层 -> 领域服务层 -> 领域模型
整洁架构
通过接口与外部进行交互的
最外层用户 -> 适配器 -> 应用层 -> 领域服务层
六边形架构
原则都是:"高内聚 低耦合"
1. 大致都分了两层
2. 合理分层的优势
核心的点
与DDD分层架构比较
架构模型分类
DDD分层架构
大平台
联通是前台和中台之间的联通
融合是前台流程和数据的融合
然后以共享的方式支持前端一线业务的发展和创新
核心业务链路的联通和不同渠道服务的共享问题
数据中台主要职能
达到的效果
1. 通用中台: 把共享的公共能力进行领域建模
2. 核心中台: 把核心能力进行领域建模
中台
中台建模步骤
3. 根据限界上下文进行微服务设计
步骤
1.自顶而下的策略
适用于遗留系统业务模型的演进式重构
3. 根据领域模型设计微服务
2.自底而上的策略
主要领域模型图示
针对互联网中的 用户模型
互联网电商案例
中台业务模型建设
数字转型
3. 可以轻松应对微服务架构的演进和代码重构
标准代码模型好处
实现DTO和领域对象之间的相互转换和数据交换
assembler
数据传输的载体
dto
facade
下级
Interfaces 用户接口层
event
应用层会对多个领域服务或其他外部服务进行封装 编排和组合
service
Application 应用层
aggregate 聚合
entity
事件相关
一个领域服务由多个实体组合出来的业务逻辑
存放聚合的查询或持久化领域对象的代码
repository
Domain 领域层
基础资源相关的代码
配置相关代码
config
util
Infrastructure 基础层
微服务根目录
DDD设计微服务模型
DDD实战
0 条评论
回复 删除
下一页