Design It Twice
不把第一直觉方案当终稿,而是至少比较两种设计形状的习惯。
#type / concept
#status / growing
#tech / dev
#resource / software-design
[!info] related notes
- 所属 MOC: Matt Pocock Skills MOC
- 前置概念: Deep Module
- 并列概念: Vertical Slice
- 易混淆概念: Tracer Bullet
- 关系笔记: Matt Pocock Skills 的工程闭环
Design It Twice
一句话定义
面对重要接口或模块设计时,至少做两种不同方案,再比较优劣后决定。
核心机制 / 工作原理
第一版设计往往只反映当前视角和当前压力。多做一次设计,才能看见哪些复杂度被错误暴露、哪些接口只是顺手拼出来的。
最小例子 / 最小场景
为一个上传模块分别设计“高封装单入口 API”和“多步骤可组合 API”,再比较哪个更符合当前系统的复杂度吸收需求。
边界与易混淆点
- 不是所有小函数都要设计两次,重点是高 leverage 边界
- 它的目标是提升判断质量,不是增加形式工作