用途:面向 DDD 初学者、架构师、高级开发者与技术负责人,提供 DDD 四层分层架构的落地指导,重点是把传统三层架构渐进重构为 Interface、Application、Domain、Infrastructure 四层,使领域层成为系统核心。
主要能力:给出三层到四层的对应关系与四个核心原则(Domain 零依赖、依赖倒置、Application 薄层、Interface 协议转换);提供分层目录结构模板(interface 含 controller/dto/converter/advice,application 含 service/command/query/assembler/event,domain 按聚合分包含 entity/valueobject/service/repository/event,infrastructure 含 repository/persistence/messaging/external/config);给出依赖方向规则(Interface→Application→Domain←Infrastructure)与命名、禁止事项等开发规范;提供七阶段实施流程(识别聚合、搭骨架、实现领域层、基础设施层、应用层、接口层、审查验证);并给出从传统三层到四层、充血模型、领域事件+CQRS 再到 Hexagonal/Clean/COLA 的演进路线。
使用方式:按工作流依次使用 awesome、selector、layered、domain-designer、code-reviewer;可参考 references 下的领域层、应用层、接口层、基础设施层、依赖规则、迁移指南、ArchUnit 配置、CQRS 集成、陷阱与 FAQ 文档,以及 examples 中的 Spring Boot 订单系统、DDD4J 实战、单体与微服务多模块等示例。产出包括项目骨架、基类模板、Maven/Gradle 依赖配置、端到端 Demo、ArchUnit 配置、演进路线图与迁移指南。
适用场景:团队小于 10 人且 DDD 刚起步、中等复杂业务且领域模型明确、已有三层项目渐进演进、Spring Boot/MyBatis 技术栈。
限制:纯 CRUD 无业务规则、多入口系统、需要物理模块隔离、高频基础设施替换等场景不建议使用;非 Spring Boot 技术栈需自行适配目录与示例;使用前提是有稳定领域专家且团队愿意切换到充血模型。本 Skill 为纯文档型,不含可执行脚本,不收集或存储用户数据,不访问网络;代码模板为教学示例,需替换占位符。