判断一篇技术文章有没有读懂,最简单的标准不是你能不能复述它的内容,而是你能不能说出:它什么时候不该用,以及你本周会试哪一件小事。
大多数技术博主写文章,目的是”讲清楚自己的方案”。读者真正需要的,是”判断这个方案适不适合我”,并且把能用的那一小块带回自己的系统。
前者是理解,后者是判断与运用。中间差的是一套可重复的阅读方法——我把它叫做 5D 框架。
本文结构:先介绍 5D 是什么 → 再讲什么场景、用多深 → 最后用一篇架构文完整走一遍。
5D 是什么
5D 是把读技术文章拆成五个固定步骤的框架,按顺序执行:
锚定(Anchor)→ 拆解(Deconstruct)→ 侦测(Detect)→ 提炼(Distill)→ 部署(Deploy)
读的时候始终带着一个问题:这和我有什么关系? 五层各自回答一件事,合在一起,才从「看过了」变成「能判断、能试用」。
| D | 英文名 | 中文 | 回答的问题 |
|---|---|---|---|
| 1 | Anchor | 锚定 | 值不值得读?我的对比基准和阅读目标是什么? |
| 2 | Deconstruct | 拆解 | 原文到底说了什么?Before/After 与关键数据是什么? |
| 3 | Detect | 侦测 | 作者略过了什么?这套方案何时不该用? |
| 4 | Distill | 提炼 | 可迁移的模式是什么?背后原理是什么? |
| 5 | Deploy | 部署 | 如何用到我的系统?本周试哪一件小事? |
各层分工简述:
- 锚定:读前建立对比基准——若是我来设计会怎么做、作者可能卡在哪类约束、读完最想带走什么判断;同时用 4 个问题筛掉与当前工作无关的文章。
- 拆解:只还原事实——业务背景、Before/After、有对比意义的数据、一句话核心逻辑;至少能画出一版最简架构图。
- 侦测:批判性阅读——留白、边界、反直觉 Trade-off、工程现实(灰度/回滚/监控是否提及)。
- 提炼:从具体方案抽象可迁移模式,择一讲清第一性原理;可选横向对标业界路线。
- 部署:落到自己的系统——联系自身、体检清单、本周一试(≤30 分钟能启动;复杂场景可写 ≤1 天的最小实验)。
三条原则:
- 顺序:成稿时 1 → 5 不跳层;没有拆解就写侦测/提炼,等于在沙上建楼。
- Deploy 最关键:没有「联系自身 + 本周一试」,前四层很容易读完就忘。
- 同一框架、两种深度:脑子里走一遍叫「人类 5D」;值得长期引用时,五层写满成结构化长笔记(L3 成稿)。
什么时候用、用多深
5D 是同一套框架,不是每篇文章都要走满五层。先判文章类型,再定深度档位。
文章类型 → 怎么读
| 类型 | 识别特征 | 怎么读 |
|---|---|---|
| 架构复盘 / 方案演进 / trade-off | Before/After、指标、架构图、取舍 | 适合走满 5D;值得长期引用则 L3 成稿 |
| API 文档 / Release Note | 版本号、Breaking changes、迁移表 | 锚定 + 查改动清单;部署 = 对照升级影响 |
| 手把手教程 / Cookbook | 逐步命令、跟做即可 | 锚定 → 跟做跑通;部署 = Demo 跑通 |
| 观点 / 趋势 / 行业评论 | 论断多、可验证方案少 | 锚定加重侦测;部署常为「持观望」 |
| 与当前工作无关 | 锚定第 4 问(见下文)为否 | L0 扫读,30 秒关掉 |
深度档位
| 档位 | 必做步骤 | 部署(Deploy)要求 |
|---|---|---|
| L0 扫读 | 1 锚定 | 无,直接关掉 |
| L1 短笔记 | 1 → 2 → 5(简) | 联系自身 + 本周一试(≤30 分钟) |
| L2 人类全 walk | 1 → 2 → 3 → 4 → 5 | 同 L1;侦测 / 提炼可写短 |
| L3 成稿 | 1~5 全写满 | + 体检清单 + 最小实验(≤1 天) |
笔记放哪里
| 场景 | 做法 | 落点 |
|---|---|---|
| 快速判断、部署写短即可 | 人类 5D(L1 / L2) | 随手笔记(Obsidian、Notion 等) |
| 冲击架构决策、要长期引用 | L3 成稿 | 知识库里单独一篇深度拆解 |
| 仅收藏 URL、尚未读 | 先存链接 | 收藏夹 / 稍后读列表 |
比例参考
不要对每篇都 L3。我自己的习惯:
- 十篇里七八篇 → L0 / L1(锚定筛选,或短笔记 + 本周一试)
- 一两篇 → L2 人类全 walk
- 一个月里一两篇 → L3 成稿,五层写满
举例:用 5D 读一篇架构文
下面用 DoorDash 的 How DoorDash Launches a New Country in One Week 走一遍 L2 人类全 walk。这是典型的架构复盘文,Before/After 清晰,适合五层顺序演示。
1. 锚定(Anchor)
打开文章之前,先建立对比基准,而不是一头扎进细节。
预判方案:若是我来设计,会先怎么做?(后面判断作者取舍的尺子。)
核心约束推测:作者最可能卡在哪些约束?常见:延迟、成本、合规、团队规模、存量系统。点名 2~3 项。
阅读目标(1 句话):读完最想带走的一个判断。
筛选(4 问,第 4 个决定性):
- 谁写的?
- 什么时候发的?
- 解决什么问题?
- 这个问题我现在或近期会遇到吗?(和当前系统/团队/项目直接相关)
第 4 问为否 → 30 秒扫标题摘要后关掉。我收藏过一篇「事件溯源重构订单系统」,架构漂亮,但我们量级小、审计靠日志就够,至今没打开第二次——这叫止损,不是浪费。
DoorDash 笔记示例:
## 1. 锚定
预判:我会先抽「国家差异」配置,不会一上来就全模块化。
约束推测:跨国上线窗口紧、国家逻辑硬编码、存量系统难动。
阅读目标:搞清「模块化拆到什么程度,才能把新国家上线压到一周」。
筛选:我们不做跨国,但「状态分散 / 配置硬编码」类问题近期会遇到 → 值得精读。
锚定不过关,后面四层都是低效阅读。
2. 拆解(Deconstruct)
先抓事实,不急着评价。
- 背景 / 全貌:谁、什么业务、Before / After
- 关键数据:只记有对比意义的数字;原文没有就写「未给出」
- 核心逻辑:1 句话说清方案本质
- 最简架构图:合上页面能重画一遍;画不出来说明还没懂
DoorDash 最简版:
Before:国家逻辑硬编码 → 新国家上线数月
After:编排器 + 工作流 + 步骤模块 + Status Map
请求 → [编排器] → [工作流定义] → [步骤模块 1, 2, 3...]
↓
[Status Map 统一状态]
核心逻辑(1 句):把国家差异下沉到可配置模块,编排器只路由、不塞业务。
关键数据:波多黎各 1 周;新西兰几乎零开发(QPS/人月原文未给出)。
三行字 + 一张简图能说清,说明拆解过关。
3. 侦测(Detect)
看作者没说什么。
- 留白:脏活、失败尝试、隐性成本
- 边界:规模 ×10 / ÷10 还成立吗?什么条件下不适用?
- 反直觉决策:一个「看似怪但合理」的 Trade-off
- 工程现实:灰度、监控、回滚、降级有没有提
DoorDash 笔记示例:
## 3. 侦测
留白:重构多少人月?迁移有没有业务中断?模块谁维护?
边界:小团队照搬编排器会很重;模块一多,管理复杂度上升。
反直觉:编排器故意做「笨」——业务下沉到步骤模块,换取国家可插拔。
工程现实:强调上线速度,回滚路径着墨不多 → 需自行评估。
「它什么时候不该用」 主要在这一层回答。
4. 提炼(Distill)
事实稳定之后,才谈抽象。
- 通用模式:如「状态集中管理」「编排器与步骤分离」
- 第一性原理(择一):为何有效?
- 横向对标(可选):同类问题还有什么路线
DoorDash 笔记示例:
## 4. 提炼
通用模式:
1. 状态集中管理(Status Map)比分散在多个表/服务里更稳
2. 编排器尽量「笨」,只负责路由,业务在可替换步骤里
第一性原理:变更频率最高的维度(国家/区域)应独立成模块,而不是散落在 if-else 里。
横向对标:类似 Temporal / 工作流引擎,但 DoorDash 选自研轻编排——适合深度定制、团队能维护的场景。
可在末尾写第一版「联系自身」:哪些模式适用、哪些不适用。
5. 部署(Deploy)
落到你的系统,绑定一个能执行的动作。 人类版可以短,但不可省略:
- 联系自身(2~3 条)
- 体检清单(≥3 条)
- 本周一试(≤30 分钟;复杂文可 ≤1 天最小实验)
DoorDash 笔记示例:
## 5. 部署
### 联系自身
1. 我们不做跨国,编排器整套暂不适用
2. 订单状态若分散多处,「Status Map 集中管理」值得对照现状
3. 团队规模小,模块不宜拆过细——借鉴思路,不照搬结构
### 体检清单
□ 订单状态是否分散?有无单一真相源?
□ 新接「多区域配置」类需求,我们最快要多久?
□ 是否存在编排与业务耦在一起的 if-else 堆?
### 本周一试
□ 画当前订单流程简化数据流图(30 分钟),标状态写在哪些表/服务
□ 周会提一问:若明天来类似需求,我们卡在哪一环?
联系自身 + 本周一试缺一不可。 部署写不出来,通常说明还在「看过了」,或锚定阶段就不该精读。
写在最后
读技术文章,目的不是”知道得更多”,而是判断更准,并在自己的系统里试一小步。
走完 5D,能回答五个问题,才算读进去:
- 锚定:它解决什么问题?我为什么值得读?
- 拆解:Before / After 和核心逻辑是什么?
- 侦测:它什么时候不该用?作者略过了什么?
- 提炼:可迁移的模式是什么?哪些对我适用、哪些不适用?
- 部署:我本周试哪一件具体小事?
收藏、划线、点赞,只是”我看过”。写下来,尤其是部署,才是”我理解了、用上了”的证据。
下次遇到一篇看起来很厉害的技术文章:先 锚定 5 分钟判类型和档位;值得的话,按 拆解 → 侦测 → 提炼 → 部署 走一遍,带一点东西回到工作里。
这样读过的文章,不会忘。