手把手教你落地 DDD - 25 年技术老兵的 DDD 学习指南
作者简介
钟敬,Thoughtworks 首席咨询师、数字化转型与运营团队 DDD 负责人。
在 IT 界从业 20 余年,先后在中国人寿、中意人寿、友邦资讯、Thoughtworks 等公司任职,带领团队成功地开发与维护了多个系统,并负责公司的敏捷转型及企业架构工作。
擅⻓面向对象软件开发方法学、领域驱动设计方法、演进式架构、敏捷及精益开发方法,注重学习和推广软件开发的最佳实践,提倡工匠精神。是 Martin Fowler 《分析模式》的译者,还参与审校了《领域特定语言》《DDD 十五年》。
课程简介
DDD(领域驱动设计),在软件工程里属于软件开发方法学的范畴。它继承了面向对象和敏捷方法的精华,并提炼了一套更容易掌握的原则、模式和实践,特别适合复杂的企业应用的开发。
DDD 在开发微服务,遗留系统改造、架构治理、企业架构、研发效能提升、架构师培养等很多方面,都有用武之地。然而,DDD 想要学习和落地并不容易,主要有以下难点:
- 领域模建模不好掌握;
- 领域模型不好实现;
- 概念混乱,资料良莠不齐;
- 技术环境还是开发理念,随时代有所变化;
- 有很多具体落地时才会遇到的问题。
为此,我们邀请了 Thoughtworks 首席咨询师钟敬老师,带你扫清以上学习障碍。钟老师将结合自己多年的项目实践经验和培训经验,带你循序渐进地学习、训练。跟着课程一步步建模型、写代码,拾级而上,你将深刻理解 DDD 的重要概念、原理,掌握 DDD 最核心的技能。
课程特色
本课程以案例为导向,模拟了敏捷软件开发过程,老师将结合一个企业管理系统案例,带你体验这该系统的三个迭代。每个迭代的需求规模逐渐扩大,复杂性也逐渐增加,相应也会让你不断深化与之对应的 DDD 模式和实践。
迭代一:打通 DDD 的最小闭环
迭代一主要会带你夯实基础,实现一个“麻雀虽小、五脏俱全”的项目。打通从需求分析,到领域建模,再到架构设计,最后到数据库和代码实现的完整闭环。学完这个迭代,你就有能力处理一些不太复杂的项目了。
迭代二:聚合、值对象和泛化
迭代二会深入讲解 DDD 里争议较大,不太好掌握的内容,包括聚合、值对象等等。同时,还会进一步带你提升领域建模能力,深化对分层架构和代码封装的理解。最后,还会学习重要的建模技巧——泛化,这是领域建模由初级走向中、高级的关键技能。学完这个部分,你会有渐入佳境的感觉。
迭代三:进阶建模、架构和落地技能
迭代三会重点讲解 “限界上下文”、事件驱动和 CQRS 等模式,也你深入讨论怎样为更加灵活多变的业务建模,帮你深化对泛化的理解。还会讲到实践落地的关键要点,比如 DDD 切入点的选择,遗留系统的改造等等。学完这个部分,你将掌握更高阶的 DDD 技能,了解如何应对更大范围的项目。[-全网知识付费下载:iquizhi.com-]
你将获得
- 20+ DDD 核心概念与模式
- 三个迭代体验 DDD 落地闭环
- 通过领域建模深入理解业务需求
- 企业落地 DDD 的排坑指南
课程大纲
DDD 小传:领域驱动设计为什么这么火?
夯实基础:打通 DDD 的最小闭环
迭代一概述:怎样开启一个麻雀虽小五脏俱全的项目?
事件风暴(上):怎样和业务愉快地聊需求?
事件风暴(下):事件风暴还有哪些诀窍?
领域建模实践(上):怎样既准确又深刻地理解业务知识?
领域建模实践(下):领域建模还有什么其他技巧?
领域建模原理:DDD 领域建模和传统方法有什么区别?
......