先搞明白:这堂课到底解决你的什么问题

很多做后端开发的人,代码写了几年,遇到“系统越来越乱、改一处崩三处、新旧需求叠着打补丁”的情况,第一反应是重构或上微服务。但结果往往是:拆完微服务以后,问题原封不动搬了过来,甚至更麻烦。这门课直指一个根本问题:系统的老化,到底是不是技术债的锅?它用“转账功能改造”和“某个项目的全面改造”两条具体案例,带你走一遍 DDD 的完整动作——从识别领域、划定边界,到用领域模型指导代码结构调整,而不是空讲概念。

课程里没有贪多求全,内容覆盖了最核心的:DDD 是什么、为什么系统会老化、转账功能怎么在 DDD 视角下重新设计、一个完整项目如何一步步改造,以及单体架构和微服务架构在 DDD 视角下的区别。和那些动辄四十个小时的“体系课”不同,这套内容更像一个先导体验包,先把你要不要深入学 DDD、学完能用在什么场景,一次性讲透。

适合什么基础的人来看,又该先看哪几块

这门课需要的前提知识不多:会写代码、见过真实业务系统,最好经历过“改需求就头大”的时刻,就够了。如果你已经熟悉 Spring Boot 这类常见框架、知道什么叫事务、理解什么是 REST 接口,那看起来会非常顺畅。如果你只是学过 DDD 概念、没在自己的项目里用过,也可以借此把理论和实际对上号。

建议的观看顺序,不用按目录顺序来。先看“什么是DDD”和“系统老化谁的锅”这两章,它们回答的是“DDD 到底想解决什么问题”——不是技术栈升级,不是换框架,而是重新找到“你的业务逻辑应该由哪段代码来负责”。这两章能帮你快速判断:我的痛点属不属于 DDD 的射程范围。

然后重点看“转账功能改造”上下两章。这是全课最具体、最有代入感的部分。别光盯着代码改了什么,要把注意力放在每一步的“为什么不这么做就不行”:原来的转账逻辑哪里和基础设施耦合了、资金操作和账户校验为什么应该分开、哪些职责必须属于领域层。看完这一段,你对“贫血模型”和“充血模型”的区别,会比从前任何一次都清晰。

再看“DDD项目改造”上中下三章。它把一个更大的系统作为改造对象,相当于把转账案例的方法论放大到模块级别。结合这一部分,建议你自己拉一个旧项目出来,把自己的代码和课程案例做对比:你的控制器里是不是常驻了大量业务规则?你的 Service 类是不是既管事务又管校验又管调用外部接口?这门课看下来,你会很清楚自己项目的“坏味道”出在哪。

学完以后,你能

课程目录

1 课程内容介绍 (08:37)
2 什么是DDD? (17:38)
3 系统老化谁的锅? (11:27)
4 转账功能改造上 (21:01)
5 转账功能改造下 (24:51)
6 DDD项目改造上 (16:51)
7 DDD项目改造中 (25:21)
8 DDD项目改造下 (11:01)
9 DDD视角下的单体架构与微服务架构 (13:44)
10 DDD发展展望 (17:44)