用 AI 写代码已经是我日常的一部分了,但我发现身边很多人用 AI 的效果差异很大——有人觉得 AI 很厉害,有人觉得 AI 给的代码总是不能用。
差距基本上在于怎么描述需求。同样一个问题,描述方式不同,AI 给的答案可以是天壤之别。
整理一下我日常在用的一些 Prompt 套路。
基本原则:给上下文,说清楚约束
AI 不了解你的项目,你得主动告诉它相关背景。
差的 Prompt:
1 | 帮我写一个登录表单 |
好的 Prompt:
1 | 帮我写一个登录表单组件,技术栈是 React + TypeScript, |
第二个 Prompt 给了:技术栈、依赖库、验证规则、接口调用、成功/失败处理,AI 生成的代码基本不需要修改就能用。
调试报错:把错误和代码一起给
遇到报错,很多人只把错误信息发给 AI,但 AI 需要看到代码才能定位问题。
模板:
1 | 我遇到一个报错,代码和错误如下: |
带上代码和背景,AI 的诊断准确率高很多。如果只发报错,它只能给你泛泛的可能原因。
让 AI 解释代码
接手老项目或者看开源库的时候,遇到看不懂的代码,可以让 AI 解释:
1 | 请解释下面这段代码的作用,逐行注释,并指出有没有潜在问题: |
或者更具体:
1 | 这个 useReducer 的 reducer 函数在做什么? |
代码审查
让 AI 帮你做 code review,发现自己没注意到的问题:
1 | 请对下面这段代码做 code review,关注以下几点: |
这个我用来检查自己写的函数,偶尔能发现几个漏了的边界情况,挺有用的。
写测试用例
写测试很耗时间,AI 来写的效果还不错:
1 | 为下面这个函数写单元测试,使用 Jest + React Testing Library, |
AI 写完之后需要检查测试是否符合实际业务逻辑,有时候它会测试一些不重要的细节,忽略真正关键的用例。
重构代码
1 | 请重构下面这段代码,要求: |
重构之后一定要跑测试,AI 重构有时候会不小心改了逻辑。
让 AI 给多个方案
遇到设计问题,可以让 AI 给几个方案,自己选:
1 | 我需要在 React 应用里实现全局消息通知(Toast), |
这种方式比让它直接给一个方案更有价值,帮你快速了解不同方向的权衡。
一个比较有用的进阶技巧:角色设定
给 AI 设定一个角色,它会以那个视角来思考问题:
1 | 你是一个有 10 年经验的前端架构师, |
1 | 你是一个专注性能优化的工程师, |
这个技巧对”评估类”的问题效果比较明显,AI 会更聚焦在你指定的维度上给反馈。
关于 AI 生成代码的使用原则
说实话,AI 给的代码我不会无脑复制粘贴。
它比较擅长:常见模式的代码(表单、列表、CRUD)、模板代码(配置文件、类型定义)、代码转换(JavaScript 转 TypeScript)。
它不太擅长:复杂业务逻辑、项目特定的架构约束、需要理解历史背景的改动。
我的习惯是把 AI 的输出当成一个「初稿」,理解它写的逻辑之后再决定用不用,或者部分采纳。完全不理解就 ctrl+c 进去的代码,迟早会在最不合适的时候出问题。





