📄 一句话概括
项目做到一半的五类症状:改完跑不起来、做到一半停了、结果和想的不一样、改了没让改的、越改越多;解法都是回到要求上,一次只改一处。
📝 本节和前面几节的关系
上一节讲配合手法,这一节是本章的实战急救包——只管【做了一半】的阶段。
一、症状一:改完跑不起来
多半是这次改动引入了新问题。解法先退回上一版能跑的状态,再一次只改一处重做。 关键是那个【上一版能跑的状态】——所以第 2.7 节体检第五项(干净、能回退)在这里兑现价值。
二、症状二:做到一半停了
通常因为任务太大或上下文太长,后半段它已经忘了前面。 解法是拆小,重新交代一次。拆完之后记得补上前面已经做完的结论,省得重复。
三、症状三:结果和想的不一样
它不报错、不慢、就是不对——多半是验收标准当初没写死。 解法不是重做,是补一句【怎么算做对了】,然后让它自查一遍。 这类问题看起来像它能力不行,其实是需求没写完。
四、症状四与五:改多了、改乱了
改了没让改的:负面约束漏了。补一句【不要动什么】,必要时让它先列清单再动手。 越改越多:范围没划住。停下来说清楚只要哪一处,其余先不动。
五、和第 2.8 节那张表的关系
第 2.8 节那张管装好之前(找不到命令、没登录),这张管做一半。 两表共同点还是那一句:先认症状,一次只改一处。 而这两张表最有效的一招,其实不在表里——退回上一版能跑的状态。
六、动手 Demo:项目阶段的排错指南
下面把做到一半时的五类症状排成表。
rows = [("改完跑不起来", "改动引入新问题", "退回上一版,再一次只改一处"),
("做到一半停了", "任务太大或上下文太长", "拆小,重新交代一次"),
("结果和想的不一样", "验收标准没写死", "补一句怎么算做对了"),
("改了我没让改的", "负面约束漏了", "补不要动什么"),
("越改越多", "范围没划住", "停下,说清只要哪一处")]
实跑输出:
--------------------------------------------------------------------
项目阶段的排错指南
--------------------------------------------------------------------
这是第 2.8 节之后、**项目做了一半**时的对照表:
症状 多半是 怎么办
-------------------------------------------------------------------------------------
改完跑不起来 改动引入了新问题 先退回上一版能跑的状态,再一次只改一处
做到一半停了 上下文太长或任务太大 拆小,重新交代一次
结果和想的不一样 验收标准当初没写死 补一句【怎么算做对了】,让它自查
它改了我没让改的 负面约束漏了 补【不要动什么】,必要时让它先列清单
越改越多 范围没划住 停下,说清只要哪一处,其余先不动
和第 2.8 节那张表的关系:那张管**装好之前**,这张管**做一半**。
共同点还是那句:**先认症状,一次只改一处。**
第三行值得单独记住:做完不对,不是它笨,是你没定义什么叫对。 五行的解法都指向同一处——回到要求上去修,而不是回到代码里去修。
30 秒实验
- 把这张表存成便签贴在终端旁边;做项目时对照着用。
- 下次卡住时,先问自己一句:这是症状里的哪一类?
常见误区
- 对着症状硬改代码。五行的解法没有一行是改代码,全在要求这边。
- 不回退就继续往前改。先回到能跑的状态,否则你不知道问题出在哪一步。
自测三问(点开对答案)
1. 【结果和想的不一样】多半是什么原因? —— 验收标准当初没写死,补一句【怎么算做对了】再让它自查。 2. 两套排错表分别管什么? —— 第 2.8 节管装好之前,本节管做了一半;共同点是先认症状、一次只改一处。 3. 最有效的那一招其实不在表里,是什么? —— 退回上一版能跑的状态——这正是第 2.7 节体检第五项的价值。- ☐ 下一节(3.6 本章练习)
相关笔记
- 💻 计算机是怎样跑起来的 · 索引 — 程序出错时怎么定位
- 🧡 Claude Code橙皮书 · 索引