本篇目标:告别“抽卡式”编程。不要指望 AI 一次就给你完美代码。学会这“三板斧”,你的代码通过率将从 30% 提升到 90%。


一、为什么“一杆进洞”很难?

很多新手喜欢这样用 AI:

  1. 扔给它一个巨大的需求(“帮我写个贪吃蛇”)。
  2. 拿到代码,运行,报错。
  3. 再扔给它报错(“报错了,修一下”)。
  4. 再运行,还报错。
  5. 怒骂:“AI 真笨!”然后放弃。

真相:连真人都很难一次写对几百行代码,何况是靠概率预测的 AI?
解法:把“一次性生成”拆解为“三轮对话”。


二、第一轮:澄清(Clarification)—— 别急着写

在 AI 开始写任何一行代码之前,先让它复述你的需求,并追问它不懂的地方。

Prompt 模板

我想做一个 [简短描述你的需求]。
在你写代码之前,请:

  1. 复述你对任务的理解。
  2. 列出你计划使用的技术栈。
  3. 最重要:如果有任何不清楚的地方,请向我提问,直到你完全明白为止。

效果
AI 可能会问:“贪吃蛇是网页版还是 Python 本地版?要计分吗?蛇撞墙是死还是穿墙?”
这时候你才发现:“哎呀,我忘了说要网页版了!”
这一轮对话,帮你省去了后面推倒重来的 1 个小时。


三、第二轮:生成(Generation)—— 分步执行

需求对齐后,让 AI 开始写。但别让它直接吐几百行代码(容易中断,容易逻辑混乱)。让它先写伪代码/计划,再写真代码

Prompt 模板

很好,你的理解是对的。请按以下步骤执行:

  1. 先输出项目的文件结构树。
  2. 用自然语言描述核心逻辑(伪代码)。
  3. 最后,生成完整的、可运行的代码文件。

效果
AI 会先画出:

snake_game/
  index.html
  script.js
  style.css

你一看:“不对,我要的是单文件 HTML。”
你可以立刻叫停:“停!合并成一个 index.html 文件。”
这一轮,帮你在代码成型前纠正架构错误。


四、第三轮:自检(Self-Correction)—— 自己找茬

拿到代码后,不要直接运行。让 AI 自己先检查一遍。
这是利用了 LLM 的一个特性:它的“鉴赏能力”通常高于“创作能力”。 它可能写不对,但它能看出哪里不对。

Prompt 模板

在我运行之前,请你作为“资深 QA”审查你刚才写的代码:

  1. 有没有逻辑漏洞?(比如蛇头撞到蛇身)
  2. 有没有未处理的边界情况?(比如输入为空)
  3. 有没有安全隐患?
    如果有,请指出并提供修复后的代码。

效果
AI 经常会惊呼:“啊!我忘了处理蛇吃到食物后长度 +1 的逻辑。这是修复后的版本…”
这一轮,帮你消灭了 80% 的低级 Bug。


五、实战演示:写一个“图片批量压缩工具”

Round 1: 澄清

User: “我要写个 Python 脚本,压缩文件夹里的图片。”
System: “收到。请问:1. 压缩率要多少?2. 原图要覆盖吗?3. 只处理 JPG 还是所有格式?”
User: “压缩到 50%,保留原图(存到 output 文件夹),处理 JPG 和 PNG。”

Round 2: 生成

User: “请按这个需求生成代码。先列出步骤。”
AI: “计划:1. 创建 output 目录。2. 遍历文件。3. 用 Pillow 库压缩。4. 保存。这是代码…”

Round 3: 自检

User: “检查一下,如果 output 文件夹已经存在且里面有同名文件,会报错吗?”
AI: “你说得对!现在的代码会直接报错。我加一个 exists_ok=True 和文件名自动重命名逻辑(如 img_1.jpg)。这是更新后的代码…”


本篇产出:三轮对话 SOP 卡片

把这张卡片贴在你的屏幕旁边,每次做复杂任务时,按顺序出牌。

轮次 目标 你的指令 (Prompt 关键词) AI 的动作
1. 澄清 对齐需求 “复述你的理解”, “向我提问”, “不要写代码” 确认需求,查漏补缺
2. 生成 产出代码 “先列计划”, “文件结构”, “Step-by-step” 规划架构,生成代码
3. 自检 消除 Bug “作为 QA 审查”, “检查边界情况”, “修复它” 自我反思,优化代码

练习题:修复“贪吃蛇”的 Bug

背景:AI 给你写了个贪吃蛇,但是蛇吃食物不长身体。
错误做法:直接把代码扔回去说“不对”。
正确做法(请尝试写出 Round 3 的 Prompt)

点击查看参考答案

“请审查 eatFood 函数。逻辑似乎有问题:当蛇头坐标等于食物坐标时,只加了分,没有把蛇身长度列表 snakeBody 增加一个元素。请修复这个问题,并确保新长出来的身体在蛇尾位置。”


下一步:掌握了三轮对话,你已经能搞定大部分中型任务了。但如果我们要处理更专业的编程场景——比如Debug(修 Bug)、Refactor(重构)、Test(写测试),有没有更专门的 Prompt 技巧?下一章我们将为你提供一套代码任务专用提示卡

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐