不是Workflow,不是多Agent,是把需求聊清楚。
昨天翻到一个帖子,作者说自己99.9%的代码都是AI写的,折腾了半年,试了各种花里胡哨的技巧,最后发现最管用的方法特别朴素——
把需求聊清楚再动手。
就这么简单?
就这么简单。
但就是这么简单的事,90%的人都没做对。
/ / /
你是不是也这样用AI写代码?
"帮我写个用户登录功能。"
AI刷刷刷写完了,你一看——嗯,不太对。
"不对,我要的是手机号登录,不是邮箱。"
AI改了一版,还是不对。
"算了,我重新描述一下..."
来回改个七八轮,你累了,AI也"累"了,最后出来的东西勉强能用,但你心里清楚:这代码写得跟屎一样。
这就是典型的"Vibe Coding"——凭感觉用AI。
你觉得AI写得快,返工成本也低,反正让它改就行了嘛。
但你没算过另一笔账:你review的时间、你反复描述需求的时间、你盯着屏幕等它改的时间——这些是真金白银。
而且每改一轮,上下文就乱一点。改到第五轮,你自己都忘了最初想要什么了。
最后出来的东西,能好到哪去?
/ / /
"左移"是什么鬼?
软件工程里有个老概念叫"Shift Left"——左移。
意思是把测试、质量检查这些事,从开发后期挪到开发早期。
别等代码写完了再找Bug,一开始就把需求搞清楚。
这个概念在AI时代收益更大。
为什么?
因为AI写代码飞快,但它对你想要什么的理解,是无法保障的。
你以为你说得很清楚了,其实AI全靠猜。
"左移"的核心就一句话:让AI动手之前,先完全搞清楚你脑子里是啥。
这一点,远远胜过其他花里胡哨的技巧。
/ / /
具体怎么做?三步走
第一步:细化需求
粗糙的想法扔给AI,让它主动追着你问。
"这个搜索是只搜标题还是带正文?"
"精确匹配还是模糊?"
"结果排序按什么?"
几轮聊下来,需求就被拍扁成一份明确的描述。
关键是AI在追问,不是你在写需求文档,门槛低很多。
我以前也试过自己写需求文档,写了半天发现:太累了,而且写着写着就烦了。
但让AI追着你问,就轻松多了。你只需要回答它的问题,它帮你把模糊的想法变成清晰的描述。
第二步:出方案
需求敲定了,让AI出方案。
包括:接口怎么改、任务怎么拆、每个任务的验收标准是什么。
这份方案先过一遍检查,确认方向对了,再让它动手。
很多人跳过这一步,直接让AI写代码。结果写到一半发现方向歪了,推倒重来。
方案阶段花10分钟确认,能省后面2小时的返工。
这笔账,算得过来吧?
第三步:验收标准
每个任务写完,不是AI说一句"我做完了"就完事。
得逐条对着验收标准自检。
"这个功能要支持分页——检查。"
"这个接口要返回JSON格式——检查。"
"这个错误要有友好提示——检查。"
一条条过,确保没漏。
/ / /
为什么这么简单的事,没人做?
因为懒。
你觉得让AI追着你问需求太麻烦,不如直接让它写,反正它写得快。
你觉得让AI出方案太麻烦,不如直接让它干,反正改起来也快。
你觉得让AI逐条检查太麻烦,不如自己肉眼看一眼,反正应该没问题。
然后你就陷入了"写得快、改得慢"的循环。
我见过太多人,用AI写代码,结果比手写还慢。
为什么?
因为他们把时间都花在了review和返工上。
AI写代码只要5分钟,但你review要30分钟,返工要1小时。
如果一开始花15分钟把需求聊清楚,AI写出来的东西一次过,你是不是省了1小时?
/ / /
对比一下:左移 vs 直接干
左移前期多花10分钟,后期省50分钟。
而且出来的质量还更好。
这笔账,怎么算都划算。
/ / /
有人可能会问:这不是多此一举吗?
"我自己写代码的时候,也没写过需求文档啊,直接动手不就行了?"
区别在于:自己写代码,你脑子里有上下文。
你知道这个功能要干嘛,你知道边界条件是什么,你知道用户会怎么用。
但AI不知道。
你脑子里的东西,AI看不见。
你不告诉它,它就只能猜。
猜对了,运气好。
猜错了,返工。
"左移"的本质,就是把你脑子里的上下文,显式地告诉AI。
让它不用猜,直接按你的意思干。
/ / /
写在最后
用了半年AI写代码,我最大的体会是:
AI不是不够聪明,是不够了解你。
你给它的需求越清晰,它出来的东西越靠谱。
你给它的需求越模糊,它出来的东西越垃圾。
与其花时间在"改代码"上,不如花时间在"聊需求"上。
这就是"左移"。
土得掉渣,但真的管用。
灵感来源:CocoLoop社区热帖《Vibe coding 了半年,最后发现最有效的手法是朴实无华的左移》
夜雨聆风