EDD 术语表
大约 2 分钟
Title
EDD 术语表
核心概念术语
副作用驱动设计 (Effect-Driven Design, EDD)
- 以"副作用识别与组织"为核心的系统架构方法
副作用 (Side Effect)
- 改变系统状态的行为,如数据库写入、API调用、发送消息等
纯化层 (Pure Layer)
- core、domain、app三层的统称,尽可能减少副作用的产生
架构分层术语
core层
- 纯业务数据结构与逻辑层,不允许副作用,可100%测试
domain层
- 行为定义层/契约层,定义trait和DTO,描述副作用语义
app层
- usecase编排层/Service层,组合trait、协调行为、返回结果+事件
infra层
- 副作用实现层,包含DB/API/Cache等具体实现
event层
- 副作用触发层,包含事件定义与事件调度器
数据结构术语
Outcome<T>
- usecase的标准返回结构,包含data、from_case、events
AppEvent
- 应用事件,用于解耦外部副作用与主流程
AppUseCase
- 用例标识,描述从哪个用例来
DTO (Data Transfer Object)
- 数据传输对象
Entity
- 实体,描述纯粹实体本身及衍生操作
ValueObject
- 值对象
设计模式术语
trait
- 行为语义接口定义,用于抽象副作用
usecase
- 用例,业务编排的基本单元
orchestrator
- 编排器,异步处理事件的组件
Outbox Pattern
- 事件发件箱模式,用于可靠的事件发布
mock
- 模拟实现,用于测试时隔离副作用
副作用分类术语
决策副作用
- 影响业务决策的副作用,如查询黑名单
执行副作用
- 执行具体操作的副作用,如发积分、发消息
异步非关键副作用
- 不影响主流程的副作用,如日志、埋点
外部状态操作
- 操作外部系统的副作用,如三方API调用
测试相关术语
副作用等级
- 0-3级,表示副作用的程度
契约测试 (Contract Test)
- 验证trait接口约束的测试
事件断言测试
- 验证事件正确性的测试
YAML驱动测试
- 使用YAML配置生成测试用例
评估维度术语
副作用封装结构
- 副作用的组织方式
usecase聚合能力
- usecase组合多种逻辑/副作用的能力
副作用隔离程度
- trait的可mock程度
可观测性
- usecase执行的事件流记录能力
幂等性
- 重复调用不影响结果的特性
这些术语构成了EDD方法论的核心词汇体系,强调通过识别、组织和控制副作用来构建可维护、可测试的系统架构。