Skip to content

20 · 最佳实践五条法则

📚 系列导航:上一篇 19 Capstone 综合实战 带你走了一趟完整工程流。这一篇换个高度——不教新功能,教「怎么用得好」。


一条总约束

上下文窗口是你最金贵的资源。Claude 的上下文窗口填充速度很快,随着填充,性能会下降。所有最佳实践,归根结底都是在帮它省着用这个「工作台」。


法则一:给它一个能自己验收的方式

NOTE

给 Claude 一个它能自己跑的检查——测试、构建、截图比对。这是「你得盯着的会话」和「你能走开的会话」之间的分水岭。

场景❌ 没给验收✅ 给了验收
写函数「实现一个验证邮箱的函数」validateEmail,测试用例:a@b.com 为真、invalid 为假。实现后跑测试
改 UI「让仪表盘好看点」[贴设计稿] 照这个实现,做完截图比对,列出差异再修
修构建「构建失败了」修好并验证构建成功。解决根因,别把错误压下去

TIP

永远让 Claude 显示证据而不是声称成功:测试输出、它运行的命令及其返回的内容。


法则二:先探索,再规划,最后才编程

让 Claude 上来就闷头写代码,很容易写出一坨「解决了错误问题」的东西。

判断标准: 如果你能用一句话描述这次改完长啥样,直接干;卡壳了,说明够复杂,先 Plan Mode。

text
读一下 src/auth 目录,搞清楚我们怎么处理 session 和登录。
先别改任何代码。

法则三:把话说具体

招式❌ 模糊✅ 具体
限定范围「给 foo.py 加测试」给 foo.py 写测试,覆盖用户已登出的边界情况,别用 mock
指向来源「ExecutionFactory 这 api 咋这么怪?」看 ExecutionFactory 的 git 历史,总结它的 api 怎么演变的
参照现有模式「加个日历组件」看主页现有组件怎么写的,HotDogWidget.php 是个好例子。照这个模式实现,别引新库
描述症状「修登录错误」用户反馈 session 超时后登录失败。查 src/auth/先写个失败测试复现,再修

法则四:CLAUDE.md 要写精,不是写多

WARNING

官方原话:保持简洁。对于每一行,问自己:「删除这个会导致 Claude 犯错吗?」如果不会,删除它。膨胀的 CLAUDE.md 文件会导致 Claude 忽略你的实际指令!

✅ 该写❌ 不该写
Claude 猜不到的 bash 命令它读代码就能搞清的任何东西
跟默认不一样的代码风格规则它早就懂的标准语言约定
测试指令、你偏好的测试运行器详细的 API 文档(改成贴链接)
仓库规矩(分支命名、PR 约定)经常变的信息
项目特有的架构决策长篇解释或教程

法则五:一跑偏就立刻拽回来

一发现 Claude 跑偏,立刻纠正,别等它越走越远。

你想干啥怎么做
中途喊停Esc,上下文保留
倒带到之前双击 Esc/rewind
撤销刚才那步直接说「撤销那个改动」
不相关任务之间重置/clear 清空上下文

TIP

纠正两次还不对,别在这个会话里耗了,直接 /clear。干净的台子 + 更好的提示,几乎总是赢过在污染的上下文里继续掰扯。


小结

法则一句话
给验收手段给它一个能自己跑的检查
先探索再编程大改动先 Plan Mode 出方案
把话说具体点文件、限场景、给参照、说清修好的样子
CLAUDE.md 写精每行拿「删了会犯错吗」过一遍
一跑偏就拽回来Esc 刹车,两次不对就 /clear

NOTE

下一篇21 反模式与排障速查:那些「看着合理、实则坑你」的用法,以及常见报错怎么解。

Claude Code 实战手册