AI 能力边界扩展指南
技术人员的通用打法
不针对某个具体技术栈转型,而是一套用 AI 扩展技术能力边界的通用方法论——诊断差距、AI 知识速通、脚手架起步、验证闭环、深化沉淀。配两条端到端实战案例(全栈跨端 / 技术型独立开发)证明它真的能落地,以及跨域映射技法、AI 辅助学习系统与常见陷阱。
认知框架
过去,跨出一个陌生技术栈时,真正吃时间的往往不是概念本身,而是查文档、试错踩坑的过程。AI 可以加快检索、解释和脚手架生成,但没有被压缩的是另一头——AI 给出的答案是否真的对,这一步的判断仍然只能靠人。DORA 的开放式回复分析可作为“验证成本会重新出现”的研究线索,不能当作所有团队的固定比例。能力边界扩展路上真正的新瓶颈不是背语法,而是能否判断产出是否可靠。
核心论点核实自 DORA 官方洞察《Balancing AI tensions》——验证开销结论出自该文中 1,110 份开放式回复的专题分析(非报告整体约 5000 人样本);信任度数据引自该文链接的 《2025 DORA report》 官方页面,原文未披露该项数据的具体样本量,2026-07 核实。
但边界扩展不等于无所不能,这条线要诚实划清楚:如果新领域和你已经掌握的心智模型同构——比如你已经会一门带类型系统的语言,换一门语法不同但范式相近的语言;你已经理解声明式 UI,换一个框架实现同一套心智模型——AI 提效非常明显,省下来的大部分时间是"记住这门语言/框架具体怎么写",这恰恰是 AI 最擅长补的那块。但如果新领域你完全陌生,没有任何可迁移的心智模型——比如你第一次要在一个业务域里做架构决策,判断"这个方案好不好"需要的是踩过坑、扛过后果积累出来的经验,这种判断力 AI 给不了;它能列选项、摆权衡清单,但拍板需要你自己积累到能拍板的地步。不划清这条线,边界扩展很容易被误解成"有了 AI 就无所不能"。
误区二:把 AI 的产出当真理,不做验证就用。这正是上面论点里"没被压缩的那一半";具体怎么把验证做成一道能落地的闭环,而不是"多测试一下"这种空话,留给下一节方法论引擎的第④步展开。
通用方法论:五步扩展引擎
五步不是五个孤立技巧,是一条链:①先诊断出"哪些是真正陌生的",②只把这部分知识速通,③立刻动手搭一个能跑的最小产物,④用可验证的方式确认它是对的,⑤回头把踩过的坑变成自己真正理解、能沉淀下来的东西。每一步都按"学什么 / 怎么学 / 用什么 / 怎么用"四问展开,"怎么用"给的是可以直接复制的提示词,不是"多问 AI"这种空话。
①诊断差距
学什么
这一步不是学新技术,是先把一件事搞清楚:我已经会的心智模型,能覆盖新领域的哪些部分。这个诊断结果直接决定后面四步怎么走——覆盖到的部分不用重学,没覆盖到的才是真正要啃的硬骨头(具体怎么把"已有心智模型"喂给 AI 做映射,是下一节跨域映射技法要展开的)。诊断阶段要问清楚三个具体问题,不能停在"我感觉自己懂多少":
- 这个新领域和我熟悉的领域,概念模型有多大重叠?
- 哪些是纯换名词的翻译,哪些是真正陌生的新概念?
- 我现在最想做成的第一个具体产出是什么?
怎么学
这一步的动作不是"学",是"问"——而且是反过来让 AI 问你,而不是你自己先列一份自评清单。自评清单这个做法本身就不可靠:你对熟悉领域的部分容易高估(觉得"这个我肯定懂"结果一细问漏洞百出),对陌生领域又容易低估(觉得"这个我完全不懂"结果其实换个名词就是你天天在用的东西)。让 AI 主动追问、边问边判断你的回答里透出的知识边界,比自己给自己打分准得多。
用什么
这一步不需要项目上下文,纯聊天模式就够——Claude Code / Codex 的对话模式直接开一个新会话即可,不用挂载任何代码库。
怎么用
我是 [你的背景,例如:5 年 Java 后端开发经验,熟悉 Spring / MySQL / 消息队列]。
我现在想把能力边界扩展到:[目标新领域,例如:分布式系统架构设计]。
我现在最想做成的第一个具体产出是:[越具体越好,例如:给现有系统设计一版能落地的多活容灾方案]。
在我说更多之前,先反问我 3-5 个诊断性问题,目的是摸清我在这个新领域里的真实知识边界——
不要假设我什么都不会,也不要假设我都懂。问题要具体到我一眼就能判断"这个我懂"或"这个我确实没听过"。
等我回答完,请根据我的回答把这个新领域拆成三类,列成表格:
① 重叠区:和我已有领域的概念模型基本相同,只是换了个名词
② 翻译区:概念不完全等价,但能用我已有的概念类比理解——你要具体指出怎么类比
③ 全新区:我完全没有对应心智模型,需要从零建立的概念
②AI 知识速通
学什么
只学上一步诊断出的"全新区"里,阻碍你验证产出正确性的最小概念集——不是别的。这里要明确排除一种直觉做法:体系化通读官方文档或教材。那是学新技术栈时的老办法,在能力边界扩展场景里效率很低,因为"全新区"往往只占新领域的一小部分,通读整本文档等于把"重叠区"和"翻译区"也从头学一遍,白白浪费时间。
怎么学
用 AI 做"概念翻译",而不是"从头听课"。具体技巧:每学一个新概念,立刻用第①步已经确认的"重叠区"里对应的旧概念去类比,并且要求 AI 反向出题验证你真的理解了——它讲完不算数,你答对题才算数。这一步最容易犯的错是"听懂了就以为学会了",反向出题是唯一能戳破这个错觉的手段。
用什么
AI 对话 + 官方文档两样都要。官方文档不是可有可无的补充,是校验 AI 说法的必要环节——AI 的类比讲解可能生动但不准确,尤其是在版本细节、边界条件这类地方,单方面信 AI 讲解容易把错误的类比当成事实记下来。
怎么用
我在 [全新区里的具体概念,例如:分布式事务的 Saga 模式] 上完全没有心智模型。
我已有的心智模型里,和它可能沾边的是:[重叠区里对应的旧概念,例如:数据库事务的 ACID、业务上的补偿/冲正机制]。
请:
1. 用我已有的 [对应旧概念] 做类比,讲清楚 [新概念] 到底是什么、解决什么问题、和我熟悉的东西本质区别在哪
2. 讲完不要停,立刻出 3 道判断题或场景题考我——题目要能测出"我是记住了你的话"还是"我真的理解了",不要出送分题
3. 我答完,你先判断对错,再指出我具体错在哪个环节的理解上
最后告诉我:如果我理解错了,官方文档/权威资料里哪一节可以直接核对?给出具体章节或关键词,不要只说"查官方文档"。
③脚手架起步
学什么
这一步不追求"理解全部原理",目标是搭一个能跑起来的最小产物,建立手感。刻意允许"知其然不知其所以然"——这是这一步和第②步的本质区别:第②步学的是"验证产出对不对"要用到的最小概念集,第③步则是先让东西跑起来,原理层面的空白留到第⑤步回头补。
怎么学
边搭边问,卡住了才深挖,不要在动手前先把所有概念学透。这是最容易拖慢进度的反模式:总觉得"再学一点就能动手了",结果一直停在学的阶段没有产出。能跑的最小产物本身就是最好的反馈——跑不通、报错了,再回去问对应的概念,针对性比预先通学高得多。
用什么
这一步需要两份可以直接复制进项目的资产:一份放进项目根目录约束 AI 协作方式的配置模板,一份覆盖高频场景的提示词库。两份都是通用版,不绑定任何具体技术栈,占位符按你的实际项目填。
怎么用
资产一:AI 协同配置模板(存成项目根目录的 CLAUDE.md,或对应工具读取的规则文件,让 AI 每次协作时自动遵守):
# 项目约定 —— [你的项目名称/一句话描述]
## 技术栈
[你的技术栈:语言 / 框架 / 数据层 / 部署方式 —— 按项目实际情况列清楚,AI 才不会瞎猜环境]
## 硬性规则
- 改动前先给出计划;方案涉及 3 个以上文件的改动必须先列清单,确认后再动手
- 不确定的地方直接问,不要自己猜着实现——猜错了返工比问一句贵得多
- 引入新依赖 / 新概念前,先说明为什么需要、有没有更简单的替代方案
- 改动完成后运行:[你的 lint / typecheck / test 命令,例如 npm run lint && npm test,或 pytest,或 go vet && go test ./...]
## 沟通约定
- 我熟悉 [你的已有技术栈/领域],新概念用它类比解释,不要假设我从零开始
- 给我代码时,顺带说明这段代码可以怎么验证正确性(呼应下面④验证闭环)
资产二:提示词库(六个高频场景,直接抄,占位符按当前任务替换):
| 场景 | 提示词(完整可复制) |
|---|---|
| 功能开发 | "实现 [功能]。Goal:[一句话];Context:相关文件是 X/Y;Constraints:遵守项目约定文件,不引入新依赖;Done-when:[验收标准] + 测试通过。先给计划。" |
| 数据结构变更 | "设计 [业务] 的数据结构:给出 schema/建表方案 + 索引或校验规则的理由 + 访问控制策略(如果这层适用,比如权限/行级安全/字段级校验)+ 回滚方式,并用 2 个边界或攻击场景验证方案站得住。" |
| 代码审查 | "审查这段代码:按 ①安全(密钥/校验/权限) ②边界情况 ③性能 三类列问题,每个给修复;最后回答:你会让它上线吗?" |
| 调试 | "报错:[全文]。先列 3 个可能根因排序,再给最小验证实验逐个排除——不要直接给'试试这个'。它相当于 [你熟悉的领域] 里的什么问题?" |
| 学概念 | "用 [你熟悉的对应概念] 类比解释 [新概念],然后出 3 道判断题考我,我答完你批改。" |
| 周复盘 | "这是我本周的代码 diff 和问题记录,总结:①我反复犯的模式 ②下周该刻意练什么 ③哪些知识点我以为懂了其实没懂。" |
④验证闭环
学什么
AI 产出的正确性不能只靠"看起来对"判断——这正是本页开篇提到的那个没被压缩的环节:生成阶段省下的时间,相当一部分要重新花在验证阶段。要学的不是某个具体工具怎么用,是针对新领域挑选合适的验证手段的判断力:单元测试、类型检查、真实环境跑通、官方文档逐条对照,哪种能确认你手头这个产出是对的,取决于产出的类型,不是套用一种万能验证法。
怎么学
具体技巧是要求 AI 自己说出它的产出怎么验证,而不是你自己想验证方法。AI 通常清楚自己写的这段东西该配什么测试、哪里最容易出错,但默认不会主动给出来——它给你代码就停在那,除非你明确要求,否则"这段代码怎么验证"这一步会被两边都跳过。
用什么
按类别记住这几种工具,不需要绑定某个具体技术栈:单元测试框架(在大多数技术栈里都有对应物,比如 JavaScript 生态的 Jest/Vitest、Python 的 pytest、Go 内置的 testing 包)、类型检查器(比如 TypeScript 的 tsc、Python 的 mypy)、linter/静态检查工具(比如 JavaScript 生态的 ESLint、Python 的 Ruff/Pylint、Go 的 golangci-lint,专门抓类型检查器管不到的代码规范和常见坑)、以及针对该领域的官方文档作为最终校验源。
怎么用
实现 [功能/改动] 之后,请在给出代码的同时必须附带以下几项——不要等我问:
1. 这段代码可以用什么方式验证正确性?按优先级列出:
① 能否写单元测试?给出测试用例框架(用我项目里已有的测试框架,没有就说明推荐哪个)
② 有没有类型检查/静态检查能直接抓出这类改动最容易犯的错?
③ 这段代码必须在什么样的真实环境/真实数据下跑一遍才算数?给出具体验证步骤
④ 涉及外部 API/官方行为的部分,你的说法是从哪个版本的官方文档得出的?列出来源,我要逐条核对,不能只信你的转述
2. 如果以上四类里有些不适用(比如这段改动没法写单测),明确说明为什么不适用,不要跳过不提。
3. 最后用一句话告诉我:如果这段代码是别人交给你审查,你自己会不会直接合并?
⑤深化沉淀
学什么
从"能跑"到"理解为什么"。具体做法是回头针对第③④步里踩过的坑,追问 AI"为什么这样写是对的,还有没有别的写法"——脚手架阶段允许的"知其然不知其所以然",到这一步必须补上。
怎么学
费曼法的 AI 版本:试着自己给 AI 讲一遍你刚学会的东西,让 AI 挑错,而不是被动接受它讲解。能不能讲清楚,是检验"真懂了"还是"以为懂了"最诚实的一道关卡——被动听讲解时的"我懂了"感觉很容易是错觉,自己讲一遍立刻会暴露哪里其实说不清楚。
用什么
AI 对话 + 自己的笔记文件。"沉淀"这个词的关键在"沉"——必须落到你自己持续维护的文档或模板里,只留在聊天记录里等于没沉淀,过两周你还是想不起来当时踩过什么坑、为什么后来改了写法。
怎么用
费曼验证——学完一个模块,先做这一步:
我来给你讲一遍我这周学会的 [概念/模块],你先别打断,等我讲完。
讲完之后按这三项挑我的错:
① 我讲的哪些地方是错的或不准确的
② 我漏掉了哪些关键点(哪怕我讲的部分都对,但整体理解不完整)
③ 追问我 1-2 个"为什么这样做是对的,换一种写法行不行"的问题,逼我说出理由而不是背答案
周期复盘——把费曼环节暴露出的问题和这段时间的产出一起沉淀下来:
这是我这周期的代码 diff、踩坑记录,以及刚才费曼环节里被挑出的错误。请总结:
① 我反复犯的模式是什么
② 下周期该刻意练什么,给具体到"用什么场景练"的建议,不要只说"多练"
③ 哪些知识点我以为懂了、费曼环节暴露出其实没懂
④ 把①②③整理成一段可以直接粘进我笔记文件([你的笔记文件名/路径])的 markdown,不要留在这轮对话里就算完
跨域映射技法
跨域映射就是五步扩展引擎第①步"诊断差距"里"重叠区/翻译区/全新区"三分类的具体操作方法:把你已经会的 A 域心智模型完整喂给 AI,让 AI 帮你把新概念逐个分进两个可执行的桶——"这是 A 的翻译"(对应①重叠区+②翻译区:概念基本对得上,换个名词或者需要一点类比就懂,学习成本低)和"这是 A 没有的新概念"(对应③全新区:真正要花时间理解的部分)。诊断阶段的三分类负责"看清楚差距在哪",这里的两个桶负责"决定每条差距具体怎么处理"——分完桶,能翻译的直接类比过去,真新的才值得投入学习时间。这个技法不是"第一次学新领域"专用的一次性动作,而是一项可复用能力:以后每换一个新域——今天是移动到 Web,明天可能是前端到后端,后天是单体到分布式——都能重复用同一套提问方式,把已有经验最大化利用,只把力气花在真正陌生的部分上。
三个跨域示例
下面三组是这套映射技法的具体产出示例,不是要你逐条背下来——重点看"怎么把已有概念转成对新概念的类比",这个转换方式才是可复用的部分。
Android ↔ iOS:声明式 UI 范式互译
| 概念 | Android(Compose) | iOS(SwiftUI) |
|---|---|---|
| 声明式 UI 单元 | @Composable 函数 | 遵循 View 协议的 struct + body |
| 组件内本地状态 | remember { mutableStateOf() } | @State |
| 跨视图共享的对象状态 | ViewModel + StateFlow | @Observable 宏标注的对象(新写法,取代旧的 ObservableObject + @Published) |
| 绑定视图生命周期的异步任务 | LaunchedEffect(key) | .task / .task(id:) 修饰符——视图消失时自动取消 |
移动端 → Web 前端:Compose/Kotlin → React/TS 精华摘要
| 移动端(Compose/Kotlin) | Web 前端(React/TS) | 关键差异 |
|---|---|---|
remember { mutableStateOf(0) } | useState(0) | 同款心智:状态变 → 函数重跑;但 React 里直接改对象/数组不会触发重渲染,必须造新引用(setItems([...items, x])) |
LaunchedEffect(userId) { … } | useEffect(() => { … }, [userId]) | 依赖数组 ≈ key;返回的清理函数在"重跑前 + 卸载时"执行,对标 onDispose |
密封类 sealed interface + when | 判别联合 { kind: "…" } + switch | TS 建模的心脏,接口返回/表单状态/事件类型都靠它,和 sealed+when 同一心智 |
Web 前端 → 后端/服务端:前端最容易带错的三个直觉
| 前端心智(你已有) | 后端新概念 | 类比要点 |
|---|---|---|
每次 setState 都从头重新渲染,没有跨渲染保留的变量 | HTTP 请求默认无状态,服务端不会"记得"上一个请求是谁 | 你熟悉的"无副作用重渲染"心智,后端把它搬到了"请求"这个粒度——状态必须显式存进数据库/缓存,不能指望服务端替你记着 |
| 浏览器帮你管理 TCP 连接、复用 Tab | 数据库连接池(connection pool) | 类比"提前建好一批可复用的连接,请求来了借一个用完还回去",不是每个请求都重新握手,道理和"复用而不是每次新建"一致 |
| 前端"防抖/禁用按钮"防止用户手滑重复提交 | API 幂等性(idempotency) | 前端的直觉是"别让用户点两下",后端幂等性是更严格的契约:同一个请求不管重发几次,服务端最终状态只变化一次——GET/PUT/DELETE 语义上天然幂等,POST 默认不是,要额外设计(比如幂等键)才能保证 |
跨域类比提问术(通用版)
下表把"Android 类比提问术"改写成不绑定具体技术栈的通用版——占位符按你正在跨的那两个域填,同一套提问结构可以在任何一次跨域学习里重复用。
| ❌ 平庸提问 | ✅ 老兵提问 |
|---|---|
| "教我 [新技术/新领域]" | "用 [你已熟悉的对应机制] 类比 [新概念] 的核心心智与触发时机,讲完出题考我" |
| "报错了怎么办" | "报错全文如下,列 3 个根因假设并给最小验证实验;它像 [你熟悉领域] 里的什么问题?" |
| "什么是 [新领域的某机制]" | "按'[你熟悉领域里对应的旧机制] vs 这个新机制的本质差异'的框架讲清楚,并给出各自的实际后果" |
| "帮我写 [某功能]" | "最小实现 + 中文逐步注释 + 指出与 [你熟悉领域方案] 的关键差异 + 列出容易踩的坑" |
| "[新领域某安全/边界机制] 怎么写" | "给出具体场景,给策略 + 用 2 个攻击或边界反例验证它挡得住" |
| (直接采纳 AI 代码) | "列出你这段代码的 3 个边界问题与 1 个安全隐患,再给修复版" |
端到端深度案例
下面两条案例都完整走一遍上面的五步方法论,选和你方向接近的一条深入读,也可以都读——两条案例内部结构一致,读一条就能掌握方法,另一条可以当参考。
案例 A:移动端 → 全栈跨端
你是一名 Android 或 iOS 背景的移动端工程师,声明式 UI、ViewModel/StateFlow 状态管理、Room 本地持久化这些心智已经很扎实,现在想往上再走一层——不只是"写一个跑在手机里的 App",而是能独立搭一个前端渲染、后端写操作、数据库读写全部自己拿下的全栈应用,不用等后端同事排期。下面按五步扩展引擎把这条跨越走一遍,技术选型以 Next.js 全栈框架为例,原理同样适用于 Nuxt、SvelteKit 等其他全栈框架。
①诊断差距(案例化)
学什么结合跨域映射两张映射表(Android↔iOS 的 remember/@State 互译、移动端→Web 前端的 remember→useState、LaunchedEffect→useEffect)理清一件事:全栈比"移动端→前端"多出的那两层,是后端服务与数据库——这两层你目前完全没有对应心智模型,才是这次诊断真正要划出来的③全新区;前端这层因为你已有声明式 UI 直觉,大概率落在①重叠区/②翻译区,不用重新花时间学。
不要自己先估"我大概懂多少",在#mapping 给的前端层映射基础上,把同一套"重叠区/翻译区/全新区"三分类往后端和数据库层继续问下去,让 AI 主动追问,而不是自己先列清单。
用什么AI 对话诊断,纯聊天模式即可,不用挂载代码库。
怎么用我是 [Android/iOS] 移动端工程师,写过 [N] 年 [Kotlin+Compose / Swift+SwiftUI],
熟悉声明式 UI、ViewModel/StateFlow 状态管理、Room 本地持久化、Retrofit 网络层。
我现在想把能力边界扩展到:能独立搭一个前端+后端+数据库都自己拿下的全栈应用
(以 Next.js 为例,原理同样适用于其他全栈框架)。
我现在最想做成的第一个具体产出是:[例如,一个带登录、能持久化私有数据的个人项目管理小工具]。
在我说更多之前,先反问我 3-5 个诊断性问题,分别覆盖:
① 前端渲染层——哪些和我的声明式 UI 直觉重叠
② 后端服务层——我从没写过接口,这层要重点问
③ 数据库层——我只用过 Room 这种本地嵌入式库,没碰过真正的服务端数据库和权限模型
等我回答完,请把结果按三层拆成表格:①重叠区 ②翻译区 ③全新区,
并特别标出:"后端服务层"和"数据库层"里,哪些概念是移动端完全没有对应物、必须从零建立的。
②AI 知识速通(案例化)
学什么从诊断出的③全新区里挑一个真正卡点:"哪段代码到底在哪跑"——服务端组件与客户端组件的边界,以及页面 HTML 什么时候生成(SSR/SSG/ISR)。这是移动端心智完全没有对应物的部分:App 里所有代码都在设备上跑,全栈应用第一次出现"同一份代码,一部分在服务器执行、一部分在浏览器执行"这件事。
怎么学用你已有的"哪层能力归哪层管"的直觉做类比引子,但要求 AI 讲完立刻出题,而不是听完类比就以为懂了——这正是#engine 步骤②"反向出题"技巧在这个具体全新区上的应用。
用什么AI 对话即可,概念澄清阶段不需要挂载真实项目代码。
怎么用我是移动端工程师,对"代码只在设备上跑"这个心智很熟。请给我讲清楚 Next.js
(或同类全栈框架)里"服务端组件"和"客户端组件"的边界:
1. 默认情况下,我写的组件在哪跑?什么声明会让它换到另一边跑?
2. 举一个具体反例:如果我把数据库查询逻辑放进了本该在浏览器跑的组件,后果是什么——
是编译期报错,还是运行时才炸,还是更糟(比如密钥被下发到浏览器)?
3. 再讲清楚 SSR/SSG/ISR 这三种"页面 HTML 什么时候生成"的模式,分别对应我要做的
应用里哪种页面(登录后的个性化面板 / 纯展示的落地页 / 更新不频繁的详情页)?
4. 讲完出 3 道判断题考我,题目要能测出我是不是真分清了"服务端组件默认能力"
和"客户端组件必须显式声明才有的能力"。
一次靠谱的回答通常长这样(结构比逐字文案更重要,判断"AI 是不是真讲清楚了"就看有没有这三块):先给一张判断表——能不能用 useState/onClick、能不能直接查库或读密钥、默认该选哪个,这张表应该 30 秒内能背下来;再给具体反例——数据库查询放进声明了 "use client" 的组件会在构建期直接报错,因为浏览器端根本拿不到数据库连接,而反过来"服务端组件里想用 onClick 却忘了声明 "use client""才是最容易在 AI 生成代码里漏检的坑;最后给 SSR/SSG/ISR 一句话结论——静态内容用 SSG,更新不频繁的内容页用带 revalidate 的 ISR,登录后的个性化面板用 SSR,对应的正是你在 Room/本地缓存里已经很熟的"要不要缓存、缓存多久"判断,只是这次要在页面粒度上做决定。
③脚手架起步(案例化)
学什么不追求学完整个技术栈,先搭出"一个能登录、有一条私有数据能读写"的最小全栈产物——这条线比"能跑起来的 Hello World"高一格,因为它同时验证了前端渲染、后端写操作、数据库权限三层是否真的打通,而不只是跑通了最简单的静态页面。
怎么学边搭边问,卡住哪层就针对性问哪层,配合#engine 步骤③已经给出的通用起手命令与 CLAUDE.md 模板——起步阶段不需要先读完框架文档或数据库文档。
用什么这里以 Next.js 为例点名具体命令,原理同样适用于其他全栈框架;数据库以 Supabase/Postgres 为例,原理同样适用于其他数据库服务。
怎么用npx create-next-app@latest my-app --yes
cd my-app
npm run dev # http://localhost:3000
建好项目后确认 tsconfig.json 里 "strict": true 还在(这是下一步④验证闭环能生效的地基),然后只做一件事把脚手架撑起来:接入一个 Auth(Supabase Auth 或同类服务的 OAuth/邮箱登录)+ 建一张只有 owner 自己能读写的表。登录、写入一条属于自己的数据、读出来只能看到自己的——这三步跑通,就是移动端跨过来的第一个全栈及格线,原理同样适用于其他全栈框架和数据库服务。顺手可以再加一个未登录跳转登录页的 proxy.ts(Next.js 16 起原 middleware.ts 改名,行为不变,官方提供 codemod),对应你熟悉的 Interceptor 鉴权拦截。
④验证闭环(案例化)
学什么承接#engine 步骤④"AI 产出正确性不能只看起来对",全栈案例里最有代表性的一处是数据权限:AI 很容易写出"看起来能跑"但权限有漏洞的代码——查询忘了带 owner 过滤,或者把无视权限的万能密钥用到了浏览器端。这一步要学的是给这类"必须验证、不能只读代码"的产出配一个可执行的验证方法。
怎么学以 Supabase/Postgres 的行级安全(RLS)为例,原理同样适用于其他数据库的权限模型(比如自建后端的中间件鉴权 + ORM 层过滤、或其他云数据库自带的行级权限):先让 AI 给出策略,再反过来让 AI 扮演攻击者列出几种绕过尝试,用两个真实测试账号互相查询验证挡得住——这正是#engine 步骤④"要求 AI 自己说出产出怎么验证"的具体落地。
用什么数据库的策略配置界面或 SQL Editor + 两个测试账号(不能自己一个账号自测,必须两个身份互相攻击才算验证)。
怎么用-- 以 Supabase/Postgres 为例,给一张表开启行级安全并写最小策略(原理同样适用于其他数据库权限模型)
alter table projects enable row level security;
-- 开启后默认拒绝一切访问——这正是它的价值,漏写一条策略 = 请求被拒,不是数据裸奔
create policy "只能读自己的项目"
on projects for select
using ( owner_id = (select auth.uid()) );
这张表已经开了行级安全、写了上面这条策略。请扮演攻击者,给出 3 种可能绕过这条
策略、读到别人数据的尝试(比如:忘记给某个操作写策略、policy 条件写反、用错误
的密钥绕过)。
然后我会用两个真实测试账号(A 账号登录后尝试查 B 账号的数据)逐条复现验证——
你先告诉我每种尝试具体该怎么操作,我验证完回来告诉你结果。
⑤深化沉淀(案例化)
学什么从"能跑通"到"能长期稳定运营"——移动端工程师熟悉的"崩溃率看板""灰度发布"这些工程习惯,在全栈里要重新落地成另一套具体动作,深化阶段就是把它们一项项补齐。
怎么学承接#engine 步骤⑤的费曼法,针对下表每一项自己讲一遍"我为什么需要它、它对应我原来的什么习惯",讲不清楚的就是还没真正沉淀,回头针对性补课。
用什么下面按类别列工具,不锁定具体品牌——CI 用 GitHub Actions 同类即可,监控用 Sentry 同类即可。
怎么用对照这张表把"移动端已有工程习惯"逐条迁移到全栈:
| 移动端已有习惯 | 全栈对应动作 | 一句话 |
|---|---|---|
| 测试金字塔(单元/集成/UI 测试) | 单元测试覆盖纯逻辑函数 + E2E 冒烟覆盖命脉流程(登录、核心功能、支付) | 只挑命脉流程写 E2E,别贪多 |
| CI 跑编译 + 检查(如 Gradle 任务) | GitHub Actions 同类工具在 PR 里跑 lint + 类型检查 + test | PR 不全绿不合并 |
| Build Variant 区分 debug/release 密钥 | 本地/预览/生产三层环境变量分层管理 | 公开前缀的变量会打进浏览器,密钥绝不加这个前缀 |
| 崩溃率看板 | 错误监控(Sentry 同类)接入前后端 | 上线后第一个要盯的仪表盘 |
| 应用商店审核 + 灰度发布 | 推代码自动部署,每个 PR 生成独立预览环境 | 回滚变成一键,比商店审核回滚幸福得多 |
| 发版前 checklist | 权限策略全覆盖、密钥边界、入口校验、签名验证、限流、监控、备份、依赖 audit | 每次大版本前重过一遍,不是写一次就完事 |
proxy.ts 改名事实核实自 Next.js 官方文档proxy.js 文件参考(Migration to Proxy 一节,v16.0.0 起生效),2026-07 核实。
案例 B:前端/客户端 → 后端与服务端工程
你是一名前端(React/Vue 等)或客户端背景的工程师,组件化拆分、状态管理、"发一个请求、拿到数据渲染出来"这套心智已经很熟练,现在想往下再扎一层——不只是消费别人写好的接口,而是能自己设计 API 契约、选一门后端语言把服务真正跑起来、并对它在生产环境里的稳定性负责。下面同样按五步扩展引擎走一遍,技术选型以 Fastify(Node.js)为主线,原理同样适用于其他后端框架;起点正是#mapping 里"Web 前端 → 后端/服务端"那张映射表——那张表已经点出前端最容易带错的三个直觉(无状态请求、连接池、幂等性),这里从它们继续往下诊断。
①诊断差距(案例化)
学什么#mapping 给出的三条映射基本落在①重叠区/②翻译区——你已经有"受控副作用"的直觉,只是把粒度从"组件重渲染"搬到了"一次 HTTP 请求"。这一步真正要划进③全新区的是那张表还没覆盖的两块:路由与契约设计(你一直是"消费" API 的一方,现在要变成"定义"这份契约的一方——路径怎么分层、状态码怎么选、错误结构怎么统一,都要自己决定,不再是读文档拿现成的)和鉴权的服务端视角(前端只需要"读"登录态——拿到 token 判断要不要显示某个按钮、要不要跳登录页;后端要"写"并对它的安全边界负责——token 怎么签发、怎么校验、过期怎么处理、一旦泄露怎么撤销,这些前端从来不用操心)。
怎么学不要自己先估,直接把#mapping 那张映射表贴给 AI 当作"已确认的重叠区",让 AI 只在剩下的部分继续追问——这样能省掉重复诊断已经诊断过的内容,把追问力气集中在契约设计和鉴权这两块真正陌生的地方。
用什么AI 对话诊断,纯聊天模式即可,不用挂载代码库。
怎么用我是前端/客户端工程师,写过 [N] 年 [React/Vue/移动端],
熟悉组件化开发、状态管理、用 fetch/axios 消费 REST 或 GraphQL 接口、
处理 loading/error 状态、用拿到的 token 判断登录态并跳转。
我现在想把能力边界扩展到:能独立设计 API、选一门后端语言把服务跑起来、
理解部署和运维的基础(不需要成为运维专家,但要能自己把服务发布上线并知道它有没有在正常跑)。
我现在最想做成的第一个具体产出是:[例如,一个有登录、能对一张表做增删改查的最小后端服务]。
已经确认的重叠区/翻译区如下,不用再重复问我这些:
- HTTP 请求默认无状态,状态要显式存进数据库/缓存
- 数据库连接池 ≈ 复用连接而不是每次新建
- API 幂等性:同一请求重发多次,服务端最终状态只变化一次
在这些之外,请反问我 3-5 个诊断性问题,重点覆盖:
① 路由与 API 契约设计——我一直是消费方,现在要变成设计方
② 鉴权与会话管理的服务端视角——token 的签发、校验、过期、撤销
③ 我完全没概念的部分:数据库设计基础(范式、索引)
等我回答完,按①重叠区②翻译区③全新区拆成表格,标出哪些是必须从零建立的。
②AI 知识速通(案例化)
学什么从诊断出的③全新区里挑三个真正卡点:无状态请求处理的服务端实现方式(不是概念上知道"无状态",而是知道并发多个请求时状态具体存哪、怎么读写)、数据库设计基础(至少要能看懂并动手设计:第一/第二/第三范式在实际建表时具体意味着什么、索引解决什么问题及其代价)、鉴权与会话管理的服务端视角(和前端"消费登录态"视角的差异——服务端要决定用 session 还是 token、token 怎么存、怎么防篡改)。
怎么学用你已有的"props 单向流入、状态提升到公共父组件"这类前端直觉做类比引子,但一定要求 AI 讲完立刻出题——这正是#engine 步骤②"反向出题"技巧在这三个全新区上的应用,听懂类比不代表真的能在设计一张表或选一种鉴权方式时用对。
用什么AI 对话即可,概念澄清阶段不需要挂载真实项目代码。
怎么用我是前端工程师,对"状态提升到公共父组件、避免重复来源"这个心智很熟。
请分三部分给我讲清楚:
1. 无状态请求处理:如果我要在服务端"记住"一个用户在多个请求之间的状态
(比如购物车、登录态),实际存在哪里?列出至少两种方案(session 存储 / token 自带状态)
及各自的权衡,并类比我熟悉的"状态提升"直觉解释为什么不能指望服务端进程内存长期可靠。
2. 数据库设计基础:用一个具体例子(比如"文章+作者+标签"三张表)讲清楚
第一/第二/第三范式分别在解决什么重复/异常问题,以及给哪些字段加索引能加速查询、
加索引的代价是什么(写入变慢、占空间)。
3. 鉴权的服务端视角:和我熟悉的"前端读 token 判断要不要显示登录页"相比,
服务端要多负责哪些事——token 怎么签发和校验、过期后怎么处理、
一旦 token 泄露怎么撤销。
每部分讲完立刻出 2 道场景题考我,题目要能测出我是不是真能在设计阶段用对,
不要出"是不是"这种送分题。
③脚手架起步(案例化)
学什么不追求学完整个后端技术栈,先搭出"一个能跑的最小 API 服务 + 一张能读写的表"——这条线同样比"Hello World"高一格,因为它同时验证了路由、请求处理、数据持久化三层是否真的打通。
怎么学边搭边问,配合#engine 步骤③已给出的通用起手命令与 CLAUDE.md 模板——起步阶段不需要先读完框架文档。
用什么后端语言/框架当前有不少主流选择,这里点名一个经 WebFetch 核实过生态活跃度的例子作为主线:如果你的前端背景是 JS/TS,Node.js 生态的 Fastify 是自然延伸,复用同一门语言,原理同样适用于 Go(如 net/http+chi)、Java(Spring Boot)、Python(FastAPI,这两年采用率呈现出这几年少见的涨幅)等其他语言与框架。数据库用一张最小表起步即可,不需要先起一个独立的数据库服务——Node.js 24 LTS 起不需要额外 flag 就能用内置的 node:sqlite 模块,官方稳定性标注是 1.2(Release Candidate,接近稳定,API 已可直接用于起步验证)。但要注意 DatabaseSync 是同步阻塞 I/O——在 Fastify 这类基于事件循环的异步框架里,一次同步查询会卡住整个进程、阻塞其他并发请求,这正是"仅适合教学/起步阶段的最小验证,真正上生产库前应评估更成熟的异步数据库方案(比如 PostgreSQL 搭配异步驱动,或专用 ORM)"这条建议真正站得住的理由。
# 以 Node.js + Fastify 为例,原理同样适用于 FastAPI/Spring Boot 等其他框架
mkdir my-api && cd my-api
npm init -y
npm i fastify
# package.json 里加 "type": "module" 才能用下面的 import 语法
// server.js —— 最小可跑的 API + 一张表,用内置 node:sqlite,零外部依赖
import Fastify from 'fastify'
import { DatabaseSync } from 'node:sqlite'
// export function build() 只组装实例、不监听端口——test.js 靠它拿到可 inject 的 app
export function build() {
const db = new DatabaseSync('app.db')
db.exec(`
CREATE TABLE IF NOT EXISTS todos (
id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL,
done INTEGER DEFAULT 0
)
`)
const app = Fastify({ logger: true })
app.get('/todos', (req, reply) => {
const rows = db.prepare('SELECT * FROM todos').all()
reply.send(rows)
})
app.post('/todos', (req, reply) => {
const { title } = req.body
const stmt = db.prepare('INSERT INTO todos (title) VALUES (?)')
const info = stmt.run(title)
reply.code(201).send({ id: info.lastInsertRowid, title, done: 0 })
})
app.get('/me', (req, reply) => {
if (!req.headers.authorization) {
reply.code(401).send({ error: 'unauthorized' })
return
}
reply.send({ id: 1 })
})
return app
}
// 直接运行本文件(node server.js)才真正监听端口;被 test.js 当模块 import 时不会执行到这里
if (import.meta.url === `file://${process.argv[1]}`) {
build().listen({ port: 3000 })
}
跑起来后用 curl -X POST localhost:3000/todos -d '{"title":"第一条"}' -H 'content-type: application/json' 和 curl localhost:3000/todos 各测一次——一写一读都通,就是这次跨越的最小及格线。
④验证闭环(案例化)
学什么承接#engine 步骤④"AI 产出正确性不能只看起来对",后端服务里最容易被 AI 生成代码糊弄过去的三处是:API 契约(响应结构、状态码是不是真的和文档/前端约定的一致)、鉴权边界(没登录/没权限的请求是不是真的被拒绝,而不是"代码里写了检查但漏了某条路径")、并发下的数据一致性(两个请求同时改同一行数据,最终结果对不对——这是前端几乎不会遇到的问题,浏览器里没有"两个用户同时点提交"这种真正的并发)。
怎么学和案例 A 一样,先让 AI 给出验证方案,再反过来让它扮演"挑刺的人"列出会被漏掉的边界——这正是#engine 步骤④"要求 AI 自己说出产出怎么验证"的具体落地,只是这次验证对象从"数据库行级权限"换成了"接口契约 + 鉴权 + 并发"。
用什么Fastify 官方推荐的测试方式是 fastify.inject() 配合 Node.js 内置的 node:test 测试运行器——不需要真的起一个端口监听,注入请求直接测,足够覆盖契约测试和鉴权边界测试;并发一致性这块要专门起真实端口用多个并发请求打。
// test.js —— 用 fastify.inject() + node:test,零额外测试依赖(Fastify 官方推荐写法)
import { test } from 'node:test'
import assert from 'node:assert'
import { build } from './server.js' // 把 server 封装成可复用的 build() 函数,inject 前不需要真的监听端口
test('POST /todos 返回 201 和创建的记录', async () => {
const app = build()
const res = await app.inject({
method: 'POST',
url: '/todos',
payload: { title: '测试待办' }
})
assert.strictEqual(res.statusCode, 201)
assert.strictEqual(JSON.parse(res.body).title, '测试待办')
})
test('未带鉴权头访问受保护路由应返回 401', async () => {
const app = build()
const res = await app.inject({ method: 'GET', url: '/me' })
assert.strictEqual(res.statusCode, 401)
})
这是我这个 API 服务的路由清单:[粘贴路由列表,标出哪些需要登录]。
请:
1. 按每条路由给出契约测试要点:正常输入的期望状态码/响应结构,以及至少 2 种
异常输入(缺字段、类型错、越权访问别人的数据)的期望行为
2. 针对标了"需要登录"的路由,列出 3 种应该被拒绝、但最容易在代码里漏掉的场景
(比如:token 过期、token 格式对但签名不对、token 有效但访问的是别人的资源)
3. 针对 [具体写操作,例如"库存扣减"/"余额转账"],给出一个并发场景描述——
两个请求同时到达会不会导致数据不一致,该用什么手段防(比如数据库事务、
乐观锁的 version 字段、唯一约束),用一句话讲清楚原理,不要只说"加锁"两个字
⑤深化沉淀(案例化)
学什么从"能跑通"到"能发布上线并知道它有没有在正常跑"——前端工程师对"部署"的经验通常止步于"推一个静态站点",后端服务要多担两件事:部署基础(容器化概念、环境变量怎么分层管理)和可观测性基础(日志和监控的最小认知),深化阶段就是把这两项补齐。
怎么学承接#engine 步骤⑤的费曼法,对着下面的检查清单自己讲一遍"每一项具体防的是什么问题",讲不清楚的就是还没真正沉淀。
用什么按类别列概念,不锁定具体品牌——容器化理解 Docker 多阶段构建、基础镜像用精简版这类思路即可,监控用 Sentry 或云厂商自带的同类服务即可。
怎么用"从能跑到生产可用"检查清单:
| 阶段 | 要补的动作 | 一句话 |
|---|---|---|
| 容器化 | 把服务打进多阶段构建的 Docker 镜像,基础镜像用精简版(如 alpine) | 本地"能跑"和"能在任何机器上跑起来"是两件事,镜像负责补上这个差距 |
| 环境变量分层 | 开发/测试/生产三套配置分开管理,密钥绝不写进代码或提交进仓库 | 和案例 A 里"公开变量会打进浏览器"是同一条红线的后端版本 |
| 健康检查 | 暴露一个 /health 路由,供部署平台判断服务是否存活 | 没有它,服务挂了也没人第一时间知道 |
| 结构化日志 | 关键路径(登录、写操作、报错)打日志,带上请求 ID 方便串联排查 | 出问题时靠日志复原现场,不是靠猜 |
| 基础监控 | 接入 Sentry 同类工具捕获未处理异常,加一个响应时间/错误率的仪表盘 | 上线后第一个要盯的仪表盘,和案例 A 的崩溃率看板是同一件事的后端版本 |
| 发布前 checklist | 鉴权全路径覆盖、密钥不出现在日志、限流、备份策略、依赖 audit | 每次大版本前重过一遍 |
Fastify 安装命令、最小服务代码、fastify.inject() 官方推荐测试写法核实自 Fastify 官方 Getting Started 与 Fastify 官方 Testing 指南;node:sqlite 的 API 用法(DatabaseSync/exec/prepare/run/all)与稳定性标注(1.2 Release Candidate)核实自 Node.js 官方 SQLite 文档;Node.js 24(Krypton)为当前 Active LTS 核实自 Node.js 官方 Releases 页面;FastAPI 采用率两年内明显上涨核实自 JetBrains/PSF《State of Python 2025》官方博客,2026-07 核实。
技术型一人公司 / 独立开发
①选题:五问过滤器(动手前必答)
| 问题 | 及格线 |
|---|---|
| 1. 我自己是不是这个问题的用户? | 是——自用产品的迭代直觉碾压猜需求 |
| 2. 目标用户有没有付费习惯? | 开发者工具/效率工具/B 端小工具 > 面向大众的免费习惯区 |
| 3. 搜索得到吗? | 存在明确搜索词(如 "xxx generator/converter")——SEO 才有抓手 |
| 4. 一个人在一个短周期内做得出 MVP 吗? | 砍到剩一个核心动作还成立,才算 |
| 5. 头部垄断了吗? | 有 3-5 个活着的小竞品 = 市场验证过且容得下小玩家(完全空白反而危险) |
②获客:SEO 是一种可验证的渠道假设
- 产品即内容:每个功能页/教程页/对比页都是搜索入口,SSG 天生可收录——技术上要落地的是
generateMetadata/sitemap.ts/robots.ts/JSON-LD 这类站点级 SEO 基建,具体写法查框架官方文档即可,别只记口号不查代码; - 程序化 SEO:用结构化数据生成长尾页,但先验证重复内容、搜索质量、索引率和维护成本,不把页面数量当作流量保证;
- 冷启动三渠道:build in public(独立开发者社区/即刻)、答题式获客(在别人提问处解决真问题顺带露出)、转型复盘本身就是内容(你的迭代过程就是连载素材)。
| 发布后迭代节奏 | 做什么 |
|---|---|
| 上线当日 | Search Console 验证站点 + 手动提交 sitemap.xml;打开 robots.txt 确认没有误伤了不该屏蔽的页面 |
| 首个内容周期 | 写第一篇内容页——不是"关于我",是能被搜到的那种:直接对着①五问过滤器里确认过的那个明确搜索词开局第一篇 |
| 初始验证阶段 | 首批外链:自己产品在个人主页/GitHub profile/独立开发者社区档案里留链接;去 3-5 个相关工具目录站提交收录——早期外链质量比数量重要,别刷 |
| 持续发布阶段 | build in public 连载启动:每次发布进度贴都带产品链接;盯 Search Console 的收录量与展现次数曲线,不是排名(这么早看排名只会自己吓自己) |
| 按反馈复盘 | 回看 Search Console:哪些词"有展现无点击"(标题/描述该改了)、哪些页面"已发现但未编入索引"(先查sitemap/robots是不是写反了),据此写下一批内容页 |
Search Console 的具体操作路径以 Google 官方帮助文档为准,平台 UI 改版频繁,这里只给动作顺序,不给会过期的截图式步骤。
③收款:国内主体的现实问题(多数教程避而不谈)
| 方案 | 适用 | 现实提醒 |
|---|---|---|
| Stripe | 海外用户 | 对主体所在地有要求,国内个人直接开通有门槛;常见路径是海外主体,先算清成本 |
| MoR(Paddle / Lemon Squeezy 等) | 海外收款想省事 | Merchant of Record 替你处理税务合规,抽成略高——一人公司早期非常值 |
| 国内通道(微信/支付宝) | 国内用户 | 企业资质基本是硬门槛;决定做国内市场前先查清这条 |
④从 0 到 1000 美元 MRR:里程碑行动表
| 里程碑 | 主要矛盾 | 行动重点 |
|---|---|---|
| $0 → 第一笔 | "有人要吗" | 上线前:落地页+等待列表验证(50个邮箱>5000行代码);首发:等待列表+社区+限时早鸟;目标是10个付费者的真实反馈,不是收入 |
| → $100 MRR | "续订吗" | 盯三个数:访客→注册、注册→付费、月流失;每周和2个用户真人对话;砍掉没人用的功能 |
| → 稳定收入假设 | "可复制吗" | 记录获客、激活、留存、退款和支持成本,再决定是否扩大渠道或测试价格;收入目标只是实验指标,不是承诺路径 |
定价心法:订阅制起步价别定太低(涨价难降价易)、给年付折扣、三档定价造心理锚点。
⑤AI 在商业化环节能帮你做什么
学什么商业化环节里有不少任务本身不是技术活,而是"想清楚+写清楚",这类任务最适合交给 AI 加速:用①五问过滤器验证选题假设时让 AI 帮你挑漏洞、把选题结论快速转成一份能验证的落地页文案骨架、搭一个基础客服/FAQ 页面兜住早期最常见的那批重复提问——这些都不是"能不能做"的问题,是"值不值得自己从头写"的问题,交给 AI 起草能省下大半时间。
怎么学不需要"学",这里是"用"——直接把下面的提示词模板改成你自己的产品信息就能跑,不用先学提示词工程。
用什么普通 AI 对话工具即可(ChatGPT/Claude 同类均可),不需要额外挂载代码库或安装插件。
怎么用【验证选题假设】
这是我针对"五问过滤器"给出的五个问题的回答:
1. [我自己是不是用户——回答]
2. [目标用户付费习惯——回答]
3. [搜索得到吗,附几个候选搜索词]
4. [一个短周期内能砍到的MVP核心动作]
5. [3-5个活着的竞品名单]
请你扮演一个挑剔的天使投资人,指出这五条回答里最站不住脚的一到两处假设,
并给出用最低成本(不写代码)验证这些假设的具体方法。
【写验证性落地页文案骨架】
基于上面确认过的选题(目标用户:[...],核心痛点:[...],
一句话产品定位:[...]),帮我写一个用来验证需求的落地页文案骨架,包含:
1. 一句话标题(直击痛点,不写虚的价值主张)
2. 三条能被搜索到的具体功能点描述(呼应②获客里确认过的那个搜索词)
3. 一个不承诺具体上线时间的邮箱等待列表 CTA 文案
4. 三条打消"为什么要留邮箱"疑虑的信任背书文案
只给骨架和文案,不需要 HTML/CSS。
【搭建基础客服/FAQ】
这是我产品的核心功能说明:[...]。请基于此列出用户上线第一个月
最可能反复问的 8-10 个问题(参考同类产品[列1-2个竞品]常见的用户困惑),
每个问题给一句简洁、不需要人工介入的回答,最后标出哪 2-3 个问题
一旦被问到,必须转人工而不能让 AI/FAQ 自动回复。
AI 辅助学习系统
三层学习法(总纲)
| 层 | 目标 | 做法 | 投入 |
|---|---|---|---|
| ① 快速扫盲 | 知道"是什么" | 让 AI 用类比讲清轮廓,先建立地图,坚决不在细节里打转 | 进入每个新领域时集中完成 |
| ② 边做边学 | 真正掌握 | 项目卡点 → 问 AI → 动手解决 → 继续前进;每个问题沉淀成一个知识点 | 贯穿整个扩展过程 |
| ③ 刻意内化 | 转为长期记忆 | 用费曼法讲给 AI 批改 + 周期复盘 + 下方动态自测 | 在每个学习周期持续重复 |
让 AI 生成自己的动态自测清单
不要背一份绑定某个技术栈的固定题库。你当前处于扫盲、项目推进还是内化阶段,最近实际学了什么,决定了此刻最该被追问什么。每个学习周期把阶段、已学内容、做过的产出和仍然含糊的地方交给 AI,让它专门攻击那些"看过就以为会了"的盲区;题目答不上来就回到项目或资料补课,下一周期再按新进度重新生成。
可直接复制的自测提示词:
我当前的学习阶段是:[快速扫盲 / 边做边学 / 刻意内化]。
这是我当前学习周期学的内容清单:
- [内容 1]
- [内容 2]
- [内容 3]
我实际做过的产出是:[项目、代码、文章或演示]。
我仍然含糊的地方是:[列出;没有把握也可以写"不确定"]。
请基于以上信息给我出 10 道"能对着空气流利说出即算过"的自测题。
要求:
1. 覆盖概念边界、底层机制、方案取舍、故障诊断和验证方法;
2. 优先追问我可能自以为懂、其实没懂的地方,不要考名词背诵;
3. 难度匹配我当前阶段,并至少包含 3 道结合实际产出的场景题;
4. 先只出题,不要给答案。我逐题口述后,再指出错误、遗漏和含糊表述,
给出最小补课动作,最后整理成下一轮自测要重点复查的缺口清单。
陷阱与心法
| 陷阱 | 症状 → 拆法 |
|---|---|
| 教程地狱 | 不断收藏课程、总觉得基础还没打好 → 起步阶段先让最小示例跑通,之后把学习嵌进自己的真实项目,缺什么再定向补什么 |
| 资料时效性陷阱 | 照搬旧资料后发现接口、工具链或最佳实践已经变化 → 优先查官方文档与变更日志,核对版本和发布日期,再在当前项目中实测确认结论 |
| 类型系统 / 规范逃逸成瘾 | 遇到约束就用 any、关闭检查或跳过规则,久而久之保护网形同虚设 → 每次逃逸都写明理由并记为技术债;讲不清边界的例外不进主干 |
| 技术馋 | 核心问题还没解决,却不断想换框架、追模型或顺手学新工具 → 只问一句:它现在是否挡住交付、验证或收费?答案是否定的就先放回候选清单 |
| 完美主义冻结 | 长期打磨架构和体验,迟迟不敢让真实用户看到 → 先发布能验证核心假设的最小版本,用真实反馈决定下一步,而不是用想象补齐全部细节 |
| AI 依赖症 | 代码和方案都由 AI 生成,自己无法解释、修改或迁移 → 把 AI 当教练而不是代打;关键逻辑必须能口述约束、手改一处并解释影响 |
| 认知陡坡误判 | 进入深水区时,新的抽象、边界和工具链同时涌入,认知负荷突然增加,于是怀疑方向选错 → 这是正常陡坡,不是失败信号;缩小问题,逐层映射,每次只验证一个边界 |
| 安全大意 | 把鉴权、权限、密钥和数据隔离当成「以后再补」 → 涉及真实数据、支付或外部访问前先完成最低安全验收;让 AI 辅助列清单,但由自己逐项验证 |
| 孤独感 / 收入焦虑 | 缺少反馈时动力衰减,短期没有收入就把探索判定为失败 → 公开进度、建立同伴反馈,同时分开看领先指标与收入结果;先验证有人愿意用和付费,再判断是否扩大投入 |
| 省略验证闭环 | AI 很快给出答案,便直接复制、运行或发布,跳过验证 → 强制回到五步扩展引擎第④步:先定义可观察结果,再用测试、日志、文档和反例交叉验证 |
| 把自信当证据 | AI 语气完整、术语丰富,就误以为结论可靠 → 把流畅度与正确性分开;要求来源、前提和不确定性,高风险结论必须用一手资料或实验复核 |
| 学习速通空心化 | 每个卡点都被 AI 直接解掉,看似进度飞快,却从未独立解决过一个真实问题 → 定期保留不让 AI 代答的 debug 回合:自己复现、缩小范围、提出假设、验证并记录证据,卡住后再请 AI 审阅过程 |
资源库
评级说明:S = 主线必用 · A = 强烈推荐 · B = 特定阶段用
学习资源与选材方法
| 级 | 资源 / 方法 | 为什么 / 怎么用 |
|---|---|---|
| S | 目标技术的官方文档、官方教程与变更日志 | 先按要做的真实产出确定技术栈,再核对目标版本的官方资料;版本、命令和迁移事项以官方变更日志为准,不要把旧教程当现行规范。 |
| S | 本页端到端案例 | 用案例里的“诊断 → 速通 → 起步 → 验证 → 沉淀”闭环驱动学习;每学一段都落到真实项目验证,而不是只收藏链接。 |
| A | stormzhang AI 编程指南 · DataWhale Easy-Vibe | 中文工具入门可按需参考;具体技术主线仍应回到对应版本的官方资料和项目实践。 |
| A | 技术视频与课程筛选 | 优先选能说明版本、给出完整项目和验证步骤的内容;先看目录和更新时间,把课程当作补充讲解,遇到差异立即回查官方文档。 |
| B | B 站 / YouTube 碎片视频 | 只用于建立入门体感或追踪技术动态;不要用零散视频替代项目闭环,也不要因讲师推荐而跳过版本核对。 |
工具、模板与技术栈补充
| 级 | 资源 | 说明 |
|---|---|---|
| S | 官方脚手架与官方示例 | 需要起步时先找目标技术栈的官方模板或示例,读懂生成的目录、配置和运行命令后再改;用最小真实功能验证每次接入。 |
| A | 项目内的 README、Issue 与变更记录 | 排障和升级先定位当前项目实际版本、配置与报错;再查官方文档和已知问题,避免把别人的环境答案直接搬进来。 |
| B | Next.js / React / Supabase 官方资料 | 仅当你选择本页案例中的对应方向时按需查阅:Next.js Learn、React Learn、Supabase Docs。它们不是所有人的主教材。 |
| B | 付费脚手架与成品模板 | 学习期优先自己完成最小闭环;当第二个产品的交付速度确实比理解成本更重要时,再评估购买,并先确认维护状态、授权和升级路径。 |
社区与本库联动
| 资源 | 用途 |
|---|---|
| Indie Hackers · 独立开发者社区 App · 即刻 / V2EX | 观察 build in public、真实收入案例和用户反馈,用来校验问题是否真实、需求是否值得做,而不是照抄他人的技术选型。 |
| 本库四件套 | 心法页(通用方法论) · Claude Code 指南 · Codex 指南(工具深度) · 环境急救手册(环境与鉴权问题排查) |