我本地躺着 71 篇 DDD 专栏 Markdown:《DDD实战课》26 篇、《手把手教你落地DDD》45 篇,geektime-dl 导出的。
下载完那一刻的感觉很像学会了。这两件事之间没有因果关系——不做加工和检索,它们就只是 71 个文件。我能验证:随时能打开,但我说不出一个订单聚合的边界该划在哪一层。
同期 Anthropic 那份对照实验(2026 年初):52 名开发者学陌生的 Python 异步库 Trio,用 AI 的那组随后测验平均 50 分,手写组 67 分;AI 组只快约 2 分钟,不具统计显著性。
两个事实指向同一件事:拿到答案的成本被打下来了,把答案变成自己能力的成本没有。更麻烦的是,答案太好拿,我们连「我哪里不会」都问不出来了。
本文给的是我重做之后的流程:输入、加工、留存三段,每段一个能照抄的产物——文件、提示词、一周一次的日程。
先把证据边界划清楚
这条必须写在前面,因为下面两个数字最容易被转述走样。
- 17% 这个差距的口径是:52 名参与者(多为初级 Python 开发者)、单次任务约 1 小时、测的是任务结束后的即时理解。它不等于「长期使用 AI 会让你的能力下降 17%」。长期技能形成没有数据,谁说有就是在编。
- 6 种交互模式的分档来自 51 名参与者的录屏质性分析,是相关性,不是因果实验。 研究者自己也这么说。所以后面我不会写「用了追问型问法就一定得高分」,只写「高分档里的人都在做这几件事」。
- Roediger & Karpicke 的实验材料是散文段落,不是编程技能。 迁移到技术学习上,是我的判断加我自己的做法,不是工程师样本的实测结论。
- 极客时间 + ima 这套工具链是我自己的选择,不是通用最优解。 后面会给判断标准,你可以换成任何满足同样条件的工具。
- 本文没有虚构的收益百分比,没有虚构的读者留言和线上事故。所有「跑过」的描述都是我本机真实存在的目录和脚本。
划完边界,剩下的部分才谈得上可信。
答案变得几乎免费,被抬高的代价是什么
先看一组行业侧的数字,它们解释了为什么这件事现在必须处理。
Stack Overflow 2025 年 12 月的提问量是 3,862 个,同比下降 78%;2014 年的月峰值超过 20 万个。 同期 Stack Overflow 2025 开发者调查里,84% 的开发者正在使用或计划使用 AI 工具,2024 年这个数字是 76%。提问量不等于学习量,下降里也有社区治理的因素,但方向很清楚:公开提问这个动作正在消失。
这个动作消失的代价,比多数人以为的大。
在 Stack Overflow 上提问是被迫的:你得写清楚环境、能复现的最小步骤、已经试过什么、报错的完整信息。很多人为了不发一个会被踩的蠢问题,会在发布前自己再查一遍——这一遍就是加工。现在这个加工步骤被跳过了,你直接问 AI,AI 直接给答案,中间没有那一步。
而且 AI 给的答案质量通常还挺高,高到你不会怀疑自己没懂。
宏观侧的压力同时也在加:世界经济论坛《2025 年未来就业报告》(覆盖 55 个经济体、1000+ 家企业)显示,雇主预计到 2030 年有 39% 劳动者的核心技能会改变(2023 年版是 44%);已完成长期学习策略下培训的员工占比从 2023 年的 41% 升到 50%。数字是雇主预期调查,不是实测,中国样本也没单独披露,但它至少说明一件事:持续学习已经从个人选择变成岗位要求,而岗位要求不会因为你用了 AI 就降低。
于是学习这件事的成本结构变了:
| 环节 | AI 出现之前 | AI 出现之后 |
|---|---|---|
| 找到答案 | 贵:搜、筛、试、问 | 接近免费 |
| 判断该问什么 | 中等:被提问流程逼着做 | 变贵:没人逼你了 |
| 把答案变成能调用的能力 | 一直很贵 | 依然很贵,且更容易被跳过 |
要重做的是后两行,不是第一行。这是本文的唯一论点,后面三段都是它的具体化。
实验里真正拉开差距的,不是用不用 AI
同一份 Anthropic 研究里有一个比「50 分 vs 67 分」更有用的发现。研究者把参与者和 AI 的交互分成 6 种模式,得分分成两档:
| 交互模式 | 测验得分档 | 具体在做什么 |
|---|---|---|
| 完全委托代码生成 | <40% | 把需求丢给 AI,拿到代码直接用,不看过程 |
| 渐进式依赖 | <40% | 先自己写,越到后面越直接让 AI 补全 |
| 迭代式 AI 调试 | <40% | 报错就贴给 AI,拿到修复就跑,不看原因 |
| 只问概念问题 | 65%–86% | 让 AI 解释概念,代码自己写 |
| 生成时要求解释 | 65%–86% | 让 AI 写代码,但要求同步解释每一段为什么 |
| 生成后追问 | 65%–86% | AI 给完代码后,追问为什么这么写、什么情况会挂 |
分差最大的题型是调试题。这个细节很重要:调试题考的不是记不记得 API,考的是你能不能从现象反推原因——而这正是被 AI 代劳掉的那一步。
研究者还有一个更扎人的观察:对照组(手写组)遇到的 Trio 特定错误(TypeError、RuntimeWarning)更多,被迫自己排查的次数是 AI 组的 3 倍。 研究者把理解差距归因到 cognitive effort 上——那段「痛苦地卡住」不是效率损失,它本身就是理解形成的机制。
还有一个反直觉的细节值得单说:AI 组并没有显著更快,平均只快约 2 分钟;有人光写提示词就花了 11 分钟,占可用时间的 30%。 也就是说,委托型用法在很多情况下连「省时间」这个唯一的理由都不成立。
图里那条「委托型 → <40%」的箭头,对应的就是这三件事:不看过程、不看原因、不自己排错。而高分档的三种模式有一个共同点——都要求 AI 输出「为什么」,而不只是输出「是什么」。
这句话后面会变成可直接复制的提示词。
三段法的骨架
我把流程拆成输入、加工、留存三段,每段只有一个硬产物。产物是判断这段有没有真做过的最低标准——做完了但没产物,等于没做。
- 输入 → 产物:
questions.md,只存我现在解释不清的问题。 - 加工 → 产物:一次追问记录(AI 的回答 + 我自己先写的答案 + 判分)。
- 留存 → 产物:一周后的自测结果,以及答不上来的问题自动进入
topics.md选题池。
那条从「留存」回到「输入」的反馈边是这套方法唯一的设计要点:答不上来的问题不只是待办,它就是下一篇要写的东西。 写作会逼着你把一条因果链补齐,这是我知道的最强的留存手段——我 2021–2023 年在公众号写了 40+ 篇 Redis 系列文章,第 3 年出了《Redis 高手心法》,那本书基本是那些文章的副产品。写作不是成名手段,它是检索练习的一种高强度形式。
第一段:输入 —— 先生产问题,而不是先收答案
输入段做三件事:固定信源、单一收件箱、先写问题再找答案。
固定信源:让一个付费专栏当课程表
我的当前信源是极客时间的两个 DDD 专栏,导出成本地 Markdown:
~/Documents/magebyte/pay-columns/DDD/极客时间/
├── DDD实战课/articles/ # 26 篇
├── 手把手教你落地DDD/articles/ # 45 篇
├── questions.md # 只存问题,不存答案(新建)
└── topics.md # 选题池,答不上来的问题进这里(新建)
固定信源解决的是「今天学什么」的决策成本。一个专栏有大纲、有顺序、有终点,它是现成的课程表;而「随手收藏一篇」没有终点,你永远不知道学完了没有。71 篇是一个可数、可推进、可完成的目标,收藏夹不是。
选信源的标准只有一条:它应该有一半内容是你现在看不懂的。 全是已知的,你只是在复习;全是未知的,你会过载(后面「失败边界」会讲)。
单一收件箱:碎片只准落在一处
所有来源的碎片,包括公众号文章的截屏、同事说的一个词、报错信息、AI 给出的某个说法,先落到同一个文件里,不做分类、不做整理、不做归档。分类是加工段的活,输入段做分类会把「收集」和「思考」混在一起,两件都做不好。
我的做法是所有碎片先进 questions.md 的「待处理」区,每周一次清空。
不在输入段做分类,是因为分类这个动作会消耗掉你唯一有限的那一口气。给一条碎片想「这个该归到数据库还是架构」的时候,你的大脑已经在做整理而不是在提出问题;而整理出来的目录结构,最后通常是给收藏夹陪葬的。分类留到加工段去做——那时候你已经知道这条碎片和哪个问题有关,归类是一个有依据的判断,不再是猜。
先写问题再找答案
这是输入段唯一有难度的一条,也是最容易被跳过的一条。
在读某一篇之前,先把「我现在解释不清什么」写下来,再去读。 顺序不能反。反过来做的话,你是带着一篇已经读过的材料去凑问题,凑出来的问题都已经被材料回答过了,检索练习就失效了(原因见留存段)。
questions.md 的格式我用的是这样:
# questions.md
## 2026-09-29 · DDD-实战课-第 8 讲
- [ ] 一个「订单 + 订单项」的结构里,聚合根应该是订单还是订单项?判断依据是什么?
- [ ] 限界上下文和微服务是 1:1 吗?如果不是,什么情况下该把它们拆开?
- [ ] 领域事件的消费方,算不算同一个限界上下文?
## 待处理(碎片,未成形)
- 同事提到「事务边界不要跨聚合」,当时没接上话 —— 为什么?
三条硬规则:
- 只写解释不清的问题,不写答案。 这条看起来最反直觉,理由是双重的:答案会过期,而问题不会——「聚合根边界该划在哪」这个问题三年后依然成立,它的答案可能已经变了;更关键的是,一旦答案和问题写在一起,你下次翻到它会读到答案,大脑把「认得这段文字」当成「我会了」,这正是 Roediger & Karpicke 实验里重复阅读组自信度更高、回忆率更低的那件事。问题池必须保持纯净,答案留在加工记录里。
- 每题不超过两行。 写超了说明你其实还没想清楚到底卡在哪一步,回到材料去。
- 一周内没被回答、也没被想起的问题,直接删掉。 它不重要。删掉它的动作本身就是在给信源打分。
第二段:加工 —— 把 AI 从答案机器改成追问机器
输入段产出了问题,加工段的目标是把这些问题交给 AI,但拿回的不是答案,是更多的问题。
下面三个模板,分别对应实验里高分档的三种模式:只问概念、生成时要求解释、生成后追问。第三个「让 AI 审我」是我加的,它把检索练习直接塞进了加工段。
模板 1:概念提问(对应「只问概念」档)
适用场景:你拿到了一个新术语,看了一眼定义,感觉懂了——这时候最危险。
我在学 DDD,目前只知道「聚合根」这个词的字面定义,没有用过它。
请回答,控制在 200 字以内:
1. 先给一个「不用聚合根就会出具体问题」的场景,场景里要有调用顺序或数据结构,
不要只说「会导致数据不一致」这种抽象后果。
2. 再说明它解决的是哪一类一致性问题,指出是哪一段代码之间的约束。
3. 最后给我一个这个阶段的初学者大概率会误解的点。
要求:不要用「总的来说」这类总结句结尾;如果某个说法在业界有争议,直接说有争议,
不要把一种做法写成标准答案。
第三条要求是关键。AI 默认会给一个平滑的、无争议的答案,而争议点才是你真正需要记住的部分——因为那是判断力的位置,不是知识的位置。
模板 2:生成时要求解释(对应「生成时要求解释」档)
适用场景:你确实要让它写代码,而且代码是要用的。
帮我实现:<你的需求>。
输出规则:
1. 分段输出。每一段先写「这段代码要满足的约束」一到两句话,再写代码。
2. 遇到你自己不确定的 API 行为或版本差异,直接写「这里我不确定,需要你验证」,
不要猜一个写法填进去。
3. 写完后单独给一节「这次实现里你可能没注意到的两个风险」,
每个风险要能对应到具体某一行。
不要给我一份可以直接复制走的实现而不解释。
第 2 条最有价值。AI 默认行为是补全,而补全出来的 API 签名经常是幻觉。让它显式标注不确定,等于把「我需要验证的点」变成了你自己的检索清单。
模板 3:生成后追问(对应「生成后追问」档)
适用场景:AI 已经给了实现,你准备接受它。这个模板就是那一步的刹车。
这是你刚给我的实现:
<粘贴代码>
我不打算直接改它。请依次回答:
1. 第 N 行为什么必须这么写?如果我把它删掉,会发生什么具体后果(报什么错、数据错在哪)?
2. 这段代码在什么输入下会出错?给我一个能触发它的最小输入。
3. 如果我把并发量提高一个数量级,哪一行先出问题,为什么是它?
4. 最后,出一道能用这段代码考我的题。我先把答案写给你,你再判我对不对,
不对的地方直接指出我错在哪一步推理上。
第 4 条把加工段和留存段接上了:AI 出的题,就是一周后自测的题源。 而且顺序是「我写答案 → AI 判」,不是「AI 给答案 → 我看」。
模板 4:让 AI 审我(我写,AI 判)
这个不在实验的六种模式里,是我自己加的,也是四个模板里最累的一个。
下面是我对「<某个概念>」的理解,是我自己写的,不是你生成的:
<粘贴你自己写的一段理解>
请做三件事,不要复述我说的话:
1. 逐条指出其中的事实性错误,每条给一个反例。
2. 指出哪些地方我只是在复述术语、并没有解释机制(这种地方我其实没懂)。
3. 给我一个「我的这个理解会失效」的具体场景。
最后给一个判断:这段理解如果在代码评审里说出来,会被追问哪两句?
如果那两句我答不上来,直接说明我缺的是哪一条因果链。
注意输入是你自己先写的东西。这一步不能被跳过——AI 审的是你的理解,如果那份理解是 AI 写的,审的就是它自己,什么都审不出来。
写不出来怎么办?写不出来本身就是结果:说明你还没懂,回去读材料。这是这套流程里唯一一个「做不出来也是有效产出」的环节。
四个模板在做同一件事
把上面四段提示词摆在一起看,它们有个共同结构:都把「产出答案」换成了「逼出一次主动输出」。
- 模板 1 要求先给场景和反例,是因为抽象结论无法被检验;有了场景,你才能判断自己是不是真的会用。
- 模板 2 要求 AI 标注不确定,是把「我该验证什么」这个判断留给你。
- 模板 3 要求出一道考你的题,是把加工段的终点接到留存段的起点上。
- 模板 4 要求 AI 判你写的东西,是把「我有没有真的懂」变成一次可被否定的输出。
这四件事都对应实验里那个归因:理解差距来自 cognitive effort。委托型用法之所以掉到 40% 以下,不是因为 AI 给的代码不好,而是因为整个过程中你没有产生过一次主动输出——没有猜、没有判断、没有错过。
一个提醒:模板 3 的第 4 条(「出一道考我的题」)是最容易被跳过的,因为它看起来最没用,AI 出题你又不会当场做。但它是四个模板里唯一一个自带间隔的——那道题会在一周后的自测里等你。不做这条,加工段和留存段就断了。
加工段的三条硬约束
- 先自己写一遍,再看 AI 的回答。 顺序反了,你只是在校对,不是在检索。
- AI 的回答不进 questions.md,只进加工记录。 questions.md 是问题池,保持纯净,否则它会退化成笔记库。
- 一次只加工一个问题。 我自己的毛病是打开对话框就想一口气问五个,问完五个都记不住。这是个人习惯层面的观察,不是实验结论。
为什么「建了知识库」不等于解决了留存
在讲留存段之前,得先把一个几乎所有人都会踩的混淆拆开。技术人这两年建了各种库:收藏夹、Notion、Obsidian、ima、AI 自动生成的读书笔记。这些投入不是没用,但它们各自只解决一半的问题。
「找得到」和「想得起来」是两件事。 前者是外部存储问题,靠工具解决,而且工具已经解决得很好了——语义检索能按意思找到一段你三个月前写的笔记,这件事在以前做不到。后者是你大脑里的检索路径问题,靠的是你自己成功取出过多少次,工具帮不上忙。
我那个 71 篇 DDD 的状态就是典型的「找得到但想不起来」:检索「聚合根」能出结果,白纸写不出来。所以下面这些判断要分开看:
| 常见做法 | 解决的是哪一半 | 剩下的那一半怎么办 |
|---|---|---|
| 收藏 / 稍后读 | 都没解决,只解决了「不丢」 | 收藏夹里没有一条是你自己的问题 |
| 建知识库、做标签和分类 | 找得到 | 分类做得越好,大脑越不需要参与,留存反而更低 |
| 让 AI 帮你总结一篇长文 | 找得到,且省时间 | 总结不是你写的,你的检索路径没有经过它 |
| 重复读自己的笔记 | 只增加熟悉感 | 换成合上笔记写一遍 |
| 写成文章 / 讲给别人听 | 两半都解决 | 成本最高,所以只留给答不上来的问题 |
表格最后一行解释了我为什么把「答不上来的问题直接变成选题」放在流程末端而不是开头:写作的留存效果最强,但成本也最高,只有值得的问题才配用它。
第三段:留存 —— 留存靠检索,不靠重读
这一段是大多数人整个流程里完全缺失的一段。
Roediger & Karpicke (2006) 发表在 Psychological Science 17(3):249-255 的实验:学习一段材料后,重复阅读 4 次的一组,一周后回忆率约 40%;学习 1 次 + 自由回忆测试 3 次的一组,约 60%。 更值得记住的是第二个发现:重复阅读组对自己记忆效果的自信度更高。
翻译成工程师的语言:读第四遍的时候你会有一种「这个我熟」的感觉,那感觉是熟悉感,不是调用能力。熟悉感来自重复接触,调用能力来自成功取出。这两件事在大脑里不是同一套机制。Adesope 等人在 2017 年对 118 项研究做的元分析给出的效应量是 Hedges' g = 0.51,属于中等偏上——不是玄学。
Bjork 的 desirable difficulties 框架解释了为什么这样反而更难:在练习中增加适度难度(间隔、交错、检索)会提升长期保持和迁移,但会拉低练习当时的表现,而且学习者普遍误判它无效(Schmidt & Bjork 1992;Kornell & Bjork 2007/2008)。所以你会觉得这套流程让你变笨了,这是预期内的,不是方法错了。
落到具体动作上,一周一个循环:
步骤 1:合上材料,做自由回忆
读完一篇或者做完一次加工之后,关掉所有窗口,在空白文件里写:这一篇讲了什么、我能复述出哪几条、哪一条我说不完整。
不要翻材料。翻了这一步就没了。写不出来的部分不用补——留白就是自测题。
步骤 2:写出 3 个「下周我还会答错」的问题
从留白里挑 3 个写进 questions.md,打上时间戳。这三个问题的标准不是「重要」,而是**「下周我大概率还是答不上来」**。
挑重要但你已经会的题,等于骗自己。
步骤 3:一周后,检索回自己的笔记做自测
一周后,用 ima 的语义检索把我自己写的笔记调出来,但检索是为了定位笔记,不是为了看答案。检索到那一段之后,合上检索结果,先把答案写出来,再打开对照。
我的库是这么建的:公众号写过的文章和配图,用 wechat-column/.workbuddy/sync-to-ima.cjs 增量同步进 ima 的「码哥跳动公众号」库;DDD 那 71 篇专栏 Markdown 是单独上传进去的,目录用可读中文命名。两拨内容在同一个账号下,检索时能一起被调出来。同步用的是这条命令:
node .workbuddy/sync-to-ima.cjs --kb-id <知识库ID> --root /path/to/wechat-column
这个脚本的三个特性决定了它适合放在这一步:
- 断点续传:state 文件里记录已上传的相对路径,重跑同一条命令接着传,不用记传到哪了。
- 频控与重试:遇到频控错误码 200001 做指数退避重试;遇到 220021(每日配额)当天跑不下去,停在那儿,第二天接着跑。
- 目录层级编码:上传用的显示名是相对路径把
/换成__,层级没有丢(articles/092-xxx.md进去还是能看出它在哪一层)。
顺便说清它的范围:这个脚本只扫 articles/*.md 和 images/ 下的图片,DDD 那批专栏文件不在它的扫描范围里,是单独传的。
第三点是我选它的真正原因:检索结果必须能落回我自己的原文。 如果一个知识库只能给你一段摘要,它就只解决了「找得到」,不解决「想得起来」。
换成别的工具完全可以成立,判断标准就三条,缺一条就不适合放在这个位置:
- 里面存的是你自己写的笔记,不是 AI 生成的摘要或收藏的文章。
- 支持语义检索,能按意思找到,不是只能按关键词精确匹配。
- 检索结果能跳回原文,能让你对着原文判自己的答案对不对。
Obsidian 加全文检索插件满足这三条,Notion 的 AI 检索满足前两条、第三条看你怎么存,ima 满足三条且省事。工具不重要,这三条重要。
自测怎么判:三条及格线
「答对了没有」很容易被自己放水。我用的是三条硬标准,三条都满足才算这一题过关:
- 能说出因果链,而不只是结论。 「跨上下文不能用同步调用」是结论;「因为同步调用会把两个上下文的事务绑在一起,一个挂了另一个跟着不可用,而划分上下文的目的就是切断这种连带」才是因果链。
- 能举出一个反例或一个失效场景。 说不出「什么时候不该这么用」,说明你记的是规则不是理解。
- 能回答一个「如果……会怎样」的追问。 自测时我会额外问一句「如果并发量提高一个数量级,这个结论还成立吗」。答不上来,这一题不计过关。
三条里缺任何一条,这题进 topics.md,不进「已掌握」。
步骤 4:答不上来的,转成下一篇选题
自测判完之后,答错的问题不留在问题池里打转,直接进 topics.md:
# topics.md · 选题池
## 待写
- [ ] 领域事件的消费方到底算不算同一个限界上下文?
· 为什么答不上来:我搞不清「上下文边界」是按团队划分还是按事务一致性划分
· 需要补齐的因果链:为什么跨上下文只能用事件、不能用同步调用
· 来源:2026-09-29 自测,第二次答错
## 已写
- [x] 聚合根边界该怎么划 → 公众号文章(标题与链接补在这一行)
「为什么答不上来」这一栏是必填的。它把「我不会」变成「我缺哪一条因果链」,后者是可以补的具体东西,前者只是一个情绪。
进入选题池的问题会被写成文章,写作又是一次强度更高的检索练习——我那 40+ 篇 Redis 文章就是这么来的,第 3 年攒成了《Redis 高手心法》。这不是励志故事,是这套流程在我身上唯一留下过痕迹的部分:我当时写过的东西,现在还说得出来;我只是看过的东西,早就不在了。 这个对比没有量化数据支撑,它只是我自己的经验,你应当用自己的记录去验证。
我的失败状态,直说
不写这段的话,上面整套会显得我一开始就想明白了。实际不是。
我的真实状态是:71 篇 Markdown 下载完,我把它们同步进了知识库,然后很长一段时间里什么都没发生。我能在检索里找到「聚合根」这个词出现在哪一篇,但让我白纸写「一个订单的聚合边界怎么定」,我写不出来。
问题出在我把「存下来」当成了「学会了」。这两件事之间的差距,就是 Roediger & Karpicke 那 40% 和 60% 的差距:重复接触产生熟悉感,不产生调用能力。我那 71 篇相当于把材料读了第一遍,然后一直在等第二遍、第三遍。
改过来的动作只有两个,都很小:
- 建一个
questions.md,规定它只存问题不存答案。 - 每周一晚上花 20 分钟,合上材料做一次自由回忆。
就这两个。工具链一行没变——geektime-dl 还是那个 geektime-dl,同步脚本还是那条命令。变的是这两步把 71 个文件从「能查到」变成了「会被想起」。
我不打算给你一个「效率提升 X%」的数字,那类数字我编不出来,也没有测过。
三条失败边界
这套流程不是越难越好,下面三种情况应该停。
1. 学的是你已经熟练掌握的技能时,别走慢流程。 Anthropic 此前的观察研究显示,在参与者已有相关技能的任务上,AI 能把完成时间缩短约 80%。这时候你不是在学习,你是在生产。刻意制造摩擦只会拖慢交付,不会增加任何理解。判断方法很土:如果这个任务你能不看文档写出来,就直接用 AI 提速,不要走输入段。
2. 基础严重不足时,先分块,再谈交错和检索练习。 desirable difficulties 有下限:低先验知识者过早做交错练习会过载(Schmidt & Bjork 1992;Kornell & Bjork 2007/2008)。换个说法——你连 Redis 的持久化都没搞清楚的时候,不要去交错学习六种缓存一致性方案。先把一个块学完整,再做间隔和检索。具体到动作:如果连续三次自由回忆都写不出任何一条,说明材料粒度太大,把它切小。
3. 「每周三问」连续两周写不出来,是信源选错了,不是你不够努力。 写不出来有两种可能:材料太简单(没有问题可问),或者太陌生(问题全是「这个词什么意思」)。两种都不是靠硬撑能解决的。判断方法是看你的三个问题停在哪一层——如果连续两周都停在「这是什么」,说明信源对你太陌生,应该往下补一层基础再回来;如果全是「这个我记得」,说明太简单,往上调一档难度。换信源比硬撑有效。
什么时候走慢流程,什么时候直接用 AI
给一个能直接执行的判断:
| 你的状态 | 该做什么 |
|---|---|
| 这个技术你要长期靠它吃饭,现在还说不清原理 | 走完整三段,重点在加工和留存 |
| 你只是要把它跑起来,以后大概率不再碰 | 直接让 AI 生成,跳过留存,别有负罪感 |
| 你已经能不看文档写出来,只是嫌慢 | 直接用 AI 提速,别制造摩擦 |
| 你连基础概念都读不懂 | 先分块补基础,别上交错和检索 |
| 你不确定属于哪一类 | 做一次自由回忆:写不出三条,就是第一类 |
最后一行是这套方法里唯一需要你先做判断的地方,其余的都是机械动作。
再补一条容易走偏的:这套流程的成本是真实的,不要给所有学习都套上它。 我把 71 篇 DDD 专栏走完整三段,是因为 DDD 是我打算长期靠它吃饭的东西;我为了一个临时要接的 SDK 查文档,就直接让 AI 生成示例代码然后跑通,不做自由回忆,也不写三问。区分标准不是「这个技术重不重要」,而是「它会不会反复出现在你未来两三年的工作里」。会,就走慢流程;不会,就用完即走,把省下来的时间留给会反复出现的那一个。
下一步最小行动不是「从今天开始坚持」,是今晚花十分钟做一件事:
新建一个 questions.md,写下三个你现在解释不清的问题。 不写答案,不分类,不管它们重不重要。写完的那一刻,你就有了这套流程里唯一无法用 AI 代劳的资产——一份知道自己在哪不懂的清单。后面所有的加工和留存,都是从这份清单开始往下走的。
———
🔧 文中用到的完整提问模板
以上我给出了四个核心模板(概念提问 / 生成时要求解释 / 生成后追问 / 让 AI 审我),完整版合集(共 42 条,覆盖学新技术 · Code Review · 重构 · 单测生成 · 架构设计 · AI Agent 调教)已整理好。
回复「prompt」即可获取,持续更新。
———
如果这篇对你有帮助,转发给你的程序员朋友 — 大家都在摸索 AI 提效,你的分享可能帮他省很多时间。