1.2 KiB
1.2 KiB
title, type, tags, last_updated
| title | type | tags | last_updated |
|---|---|---|---|
| Domain-Driven Design | concept | 2026-05-01 |
Definition
一种以业务领域为核心的软件设计方法论,通过建立通用语言(Ubiquitous Language)在技术和业务团队之间建立统一的沟通模型,并以有界上下文(Bounded Context)划分系统的边界。
Key Patterns
- Bounded Context:业务领域的清晰边界,每个上下文有独立的模型和术语
- Aggregate:聚合根,负责维护业务不变量
- Domain Event:领域事件,记录业务状态变化
- Anti-Corruption Layer:防腐层,隔离外部系统对核心域的侵蚀
- Context Mapping:上下文映射,定义不同有界上下文之间的关系(Upstream/Downstream/Conformist/Anti-Corruption)
Core Principles
- 领域优先,技术其次:先理解业务问题,再选择技术实现
- 通用语言:团队中的每个人都使用同一套术语,减少沟通摩擦
- 持续精化:领域模型通过迭代不断深化对业务的理解
Related Concepts
- BoundedContext:DDD 中的核心边界概念
- EventStorming:领域发现的协作技术
Sources
Aliases
- DDD
- Domain-Driven Design