Sairyss avatar

Sairyss/domain-driven-hexagon

14.8k 1.6k 201
TypeScript MIT
创建于 5 年前 最后更新 2 年前 +2 stars today

AI 综合评分

65 B 级
代码质量
60
文档质量
68
社区健康
62
项目活跃
70
创新性
57

项目简介

结合领域驱动设计与六边形架构的TypeScript最佳实践指南。

项目摘要

【主题】

一套融合DDD、六边形架构与Clean Architecture的完整实践模板,帮你写出可维护、可测试、符合SOLID原则的后端代码。

【核心分点总结】

  1. 架构分层:清晰划分领域、应用、基础设施层,依赖倒置,内部稳定不被外部框架污染。
  2. DDD核心要素:实体、值对象、聚合、仓储、领域服务、领域事件等模式均有TypeScript示例。
  3. 测试策略:单元测试聚焦领域逻辑,集成测试覆盖适配器,端到端验证完整流程。
  4. 安全设计:内置Secure by Design原则,防止常见漏洞,代码即安全文档。
  5. 工具链整合:NestJS + TypeORM + Swagger,贴近实际生产环境,开箱可用。

【行动指南】

  1. 如果你是DDD新手:克隆仓库,对照目录结构阅读每个文件注释,并运行测试理解分层职责。
  2. 如果你在重构现有项目:参考该项目的模块组织方式,将业务逻辑从框架中剥离,逐步迁移至六边形架构。
  3. 如果你想深入学习:结合DDD蓝皮书,对比仓库中的代码示例,理解理论如何落地。

【金句总述】

不止是代码模板,更是DDD架构思想的实战教科书。

【故事性收尾】

以前每次需求变更,你都要翻遍整个Controller和Service层,小心翼翼避免破坏隐藏的依赖。现在你打开项目,领域逻辑清晰独立地躺在内层,外层的数据库、消息队列只是可插拔的适配器。你只需在domain目录下修改一个值对象的验证规则,测试全部变绿,重构变得像呼吸一样自然。

相关项目推荐