📚 课程介绍
本课程深入解析领域驱动设计(DDD)的核心思想,通过实际案例展示DDD在大型系统设计中的应用,适合有一定编程基础,希望提升系统设计能力的开发者。
📋 学习前提
1. 熟悉面向对象编程基础 2. 了解软件开发的基本流程和架构设计原则
📖 课程目录
第1章 领域驱动设计的背景和来源
1-1 DDD课程导学
1-2 DDD的核心思想和解决的痛点问题
1-3 面向对象和敏捷与DDD的区别与联系
1-4 DDD的过去、现在与未来
第2章 战略设计
2-1 智慧零售案例项目介绍
2-2 建模和设计的整体流程
2-3 如何描述模型?从用户故事到通用语言
2-4 分解问题:领域划分和子域
2-5 确定系统最核心的部分:核心域和精炼
2-6 分解模型:限界上下文
2-7 确定系统最核心的部分:核心域和精炼
2-8 剥离领域模型与技术实现:建立分层架构
2-9 多个上下文之间如何协作?上下文映射和防腐层
第3章 初涉战术设计
3-1 环境准备、开发约定和架构说明
3-2 战术设计分析和交易域依赖准备工作
3-3 战术设计分析和交易域依赖准备工作
3-4 战术设计分析和交易域依赖准备工作
3-5 战术设计分析和交易域依赖准备工作
3-6 实体和值对象
3-7 领域对象的构造
3-8 资源库与持久化
3-9 优雅地实现一致性:聚合
3-10 独立的业务逻辑:领域服务
3-11 应用层实现
3-12 应用层实现
3-13 应用层实现
3-14 应用层实现
3-15 运行效果和本章总结
第4章 深入战术设计
4-1 “运营域”整体架构设计
4-2 本章导学(环境和周边系统说明)
4-3 事件风暴建模法
4-4 领域事件
4-5 防腐层的构建
4-6 使用事件风暴法对运营域建模
4-7 使用阿里云大数据服务实现经营数据分析—&mda
4-8 使用阿里云大数据服务实现经营数据分析—&md
4-9 使用阿里云大数据服务实现经营数据分析—&md
4-10 使用阿里云大数据服务实现经营数据分析—&md
4-11 使用阿里云大数据服务实现经营数据分析—&md
4-12 使用阿里云大数据服务实现经营数据分析—&md
第5章 DDD和微服务
5-1 本章导学
5-2 为什么要微服务,实现微服务的前提和基础
5-3 微服务的问题和DDD提供的答案
5-4 微服务主流框架和基础设施介绍
5-5 微服务关键技术和主流框架介绍
5-6 基于DDD思想进行服务拆分和重构(一)
5-7 基于DDD思想进行服务拆分和重构(二)
5-8 微服务化后的SmartRM整体架构设计
5-9 使用k8s进行容器编排:服务部署上云(一)
5-10 使用k8s进行容器编排:服务部署上云(二)
5-11 kubernetes容器编排技术原理和案例应用
5-12 基于服务网格技术对SmartRM系统进行服务治理
5-13 服务网格技术原理和案例应用
5-14 本章总结
第6章 实践中的问题和关键点
6-1 持续集成的重要性以及如何搭建
6-2 持续集成系统的搭建
6-3 领域沟通和建模如何避免漏掉重要细节
6-4 DDD的常见问题、争论以及局限性
第7章 总结与展望
7-1 DDD的核心思想与方法回顾
7-2 程序员的技术生涯(含腾讯面试考核点)
