一、为什么写这个专栏软件行业里DDD 被谈论了很多年但真正能把它落到代码里的团队并不多。不少团队尝试过 DDD。战略设计阶段通常还算顺利——限界上下文、聚合这些概念能理解画出来的领域模型也有模有样。但一进入战术设计问题就来了实体该放哪些方法仓储接口定义在哪一层业务规则由谁执行事务边界怎么控制书上的案例太简单真实项目又太复杂。中间缺了一条可操作的路径——从领域模型到可运行代码之间的路。这个专栏就是想补上这条路。二、专栏结构全专栏 21 讲分成四个模块。模块一全景认知第1-3讲先看到全貌不深入细节只建立整体认知。第1讲通过三个真实的拆分灾难说明为什么需要 DDD第2讲用一张图串起所有核心概念第3讲用 15 分钟跑通最小闭环让你亲眼看到 DDD 的代码长什么样。模块二战略设计第4-11讲战略设计回答的问题是业务边界在哪里从领域拆分开始完整走一遍事件风暴的流程——产品愿景、场景分析、领域建模、微服务设计。全程用电商订单系统作为案例贯穿。学完这一模块你应该能独立完成一个业务领域的战略设计。模块三战术设计第12-18讲战术设计回答的问题是领域模型怎么写成代码从实体、值对象开始到聚合、领域服务、应用服务、仓储、领域事件最后落到分层架构和 CQRS 查询。每一讲都给出可运行的 Java 代码。学完这一模块你应该能把领域模型落地为可运行的微服务。模块四架构演进与扩展第19-21讲系统上线后不是终点。业务在变架构也要跟着变。第19讲讨论微服务边界如何随业务演进第20讲讨论新老系统共存时的防腐层设计第21讲讨论 DDD 如何指导中台建设。全专栏结构概览模块一全景认知3讲第1讲为什么需要DDD → 第2讲核心概念一张图 → 第3讲15分钟最小闭环模块二战略设计8讲第4-6讲核心概念与拆分 → 第7讲事件风暴总览 → 第8-10讲三阶段实战 → 第11讲微服务拆分模块三战术设计7讲第12-13讲实体/聚合根/值对象 → 第14讲领域/应用服务 → 第15讲仓储模式 → 第16讲领域事件 → 第17讲分层架构与目录结构 → 第18讲QueryHandler与CQRS模块四架构演进与扩展3讲第19讲三种边界与架构演进 → 第20讲防腐层 → 第21讲DDD与中台建设三、贯穿案例与代码全专栏只用同一个案例**电商订单系统**。所有概念、所有代码、所有架构决策都围绕这个案例展开。订单系统足够复杂能覆盖 DDD 的大部分场景又足够熟悉不需要额外花时间理解业务。代码示例用 Java Spring Boot。第3讲给出一个最小闭环可以直接运行。第12讲之后代码从极简版本逐步演进到完整实现——每一讲都在前一讲的基础上推进。如果某段代码在第3讲和在第12讲不一样不是前后矛盾而是演进从“能跑”到“规范”。四、核心主线如果只记住一句话记住这句**DDD 的核心是边界。**战略设计定义业务边界子域、限界上下文战术设计定义代码边界聚合、分层架构。边界定义清楚了代码自然就清晰了。五、阅读建议刚接触 DDD 的读者按顺序读。前面的概念在后面会被反复使用跳着读容易断掉理解链条。有 DDD 基础的读者可以跳过第1-3讲从第4讲开始。但第12讲战术设计开始不要跳——那里是从最小闭环到完整实现的分界点跳过可能不清楚“为什么要这样写”。
