一小时学完框架设计
GoDDD 采用六边形架构(Hexagonal Architecture),每个领域模块遵循三层分离。掌握以下核心概念,你就能高效使用这套框架。
三层架构
| 层 | 职责 |
|---|---|
| API | HTTP Handlers — 路由注册、参数校验、响应封装 |
| Core | Business Logic — 领域模型、业务规则、接口定义 |
| Store | Persistence — 数据库 CRUD、缓存、数据迁移 |
核心概念
领域模块
每个业务领域(用户、订单、商品等)拥有独立的 API / Core / Store 三层结构,互不耦合,可独立测试和部署。
依赖注入
使用 Wire 在编译期完成依赖注入,无运行时反射开销。Core 层通过接口依赖 Store,支持 mock 测试。
函数式选项
构造函数使用 Functional Options 模式,提供灵活的可选配置,保持 API 简洁且向后兼容。
统一错误处理
Core 层返回业务错误码,API 层自动映射为 HTTP 状态码和标准化 JSON 响应,全链路可追踪。