3
0
0
什么样的需求描述,才能让 AI 一次到位|Vibe Coding 第三篇
先复盘那个失败案例
Vibe Coding 系列前两篇,入门篇用筛素数讲了“一句话让 AI 写程序”,进阶篇用生成艺术讲了参数化迭代和固定种子。30 天实验那篇留了个扣子:为什么我提了 8 轮需求,一个粒子系统还是不对?
复盘原话是:“效果总差一点,再调调。”AI 忠实地执行了我每一个模糊指令,改了 8 轮越改越乱。问题不在模型,在我根本说不清“对”长什么样。后来换成一句话就过了:“粒子在鼠标经过时向外扩散 80px,2 秒内带阻尼回落,颜色从青蓝渐变到白,不要闪烁。”——同样的意图,为什么这次行了?
一次到位的四要素
- 给终点,不给路径。“写个筛素数的程序”是路径;“输入 n,输出 2 到 n 之间所有素数,10 万以内要在 1 秒内跑完”是终点。AI 换什么算法都行,但知道什么算做完。
- 给验收标准。可测的数字是最好的验收:跑几秒、几像素、几轮、兼容哪个版本。上一篇固定种子就是典型——“用种子 42,每次都长这样”,可复现才算标准。
- 给边界,别给无限自由。“只动这个文件”“别改已有函数签名”“依赖不超过 3 个”。30 天实验里那些越改越一锅粥的代码,都是我没画边界的结果。
- 给参照物。“布局像苹果官网首页”“动画节奏参考 macOS 的窗口缩放”——一个具体锚点胜过十个形容词。“好看一点”“优化一下”这类词,直接删掉,AI 猜不出你脑内的画面。
两个实战习惯
- 先让它复述,再让它动手。说一句“先告诉我你打算怎么做,我确认了再写”,30 秒的复述能省掉 8 轮返工——它复述错位,说明你的描述就有歧义。
- 一次一个变量。同时提三个需求,出了问题你不知道是哪个引起的。改一轮、跑一轮、落袋一轮,和写代码的迭代节奏没区别。
本质是什么
30 天实验的结论在这正好闭环:AI 没让我不会编程,它把我定义问题能力的下限暴露了出来。需求描述能力 = 你对问题的理解深度——这不是提示词技巧,是编程能力换了存放位置:从手指挪到了脑子里。
系列到这,工具(筛素数)、方法(参数化迭代)、实战(30 天实验)、心法(本篇)就齐了。下一篇想看什么方向?评论区点菜。