最近大半年,“Vibe Coding”这个词在开发圈里被反复提起,从独立开发者到技术团队都在讨论。简单说,它描述的是这样一种工作状态:你不必逐行手敲代码,而是用自然语言描述需求与约束,让AI工具自动生成、修改、扩展代码,人只负责把握大方向和最终把关。换句话讲,AI不再只是给你补全代码的“输入法”,而是变成了一支按你的口头描述执行开发的“外包团队”。这篇文章我想从实际操作角度聊聊:Vibe Coding到底是怎么让AI自动构建AI产品的,它适合谁、不适合谁,以及从需求到可运行产品之间,那条真实可行的工作流长什么样。
文章面向三类人:想用AI快速验证想法的产品经理,想把重复编码外包出去的独立开发者,以及正在观望“AI辅助开发会不会让程序员失业”的技术从业者。我不会只讲概念,会把我实际踩过的坑、用过的提示词模板、检查AI产出质量的方法都放在里面。如果你也想让AI从一个“玩具生成器”变成“正经开发搭子”,这篇文章应该能帮你少走不少弯路。
1. 先给Vibe Coding祛魅:AI不是替你想,而是替你敲
Vibe Coding这个词最早是从“vibe”这个氛围感词延伸来的,听起来很像“跟着感觉写代码”。很多人的第一反应是:那我是不是只要在旁边喊“帮我做个App”就行了?实际用下来你会发现,这种理解偏差特别容易导致翻车。AI确实能写出大段代码,但它写出来的方向完全取决于你给出的描述。同样一句“做个待办事项应用”,给出来的可能是一个用命令行跑的后端接口,也可能是一个带页面的前端Demo,甚至可能是一堆互相冲突的接口定义。问题不出在AI,出在“待办事项应用”这个词在不同语境下的信息密度太低。
AI并不是在替你思考产品该怎么做,它是在把你已经想清楚的意图翻译成代码。这意味着你的脑子里必须先有一张模糊的地图:产品给谁用、核心流程是哪几步、大概长什么样、有哪些硬性约束。你不需要知道具体某个函数怎么写,但你必须知道“先登录再看到列表”和“打开就能填表”是两种完全不同的需求结构。Vibe Coding真正改变的是把“想清楚”到“能跑起来”之间的距离压缩到了几十分钟,但它并没有把“想清楚”这一步本身取消掉。
这里有一个很反直觉的体验:越是对编程不熟悉的人,越容易觉得AI写出来的东西是“魔法”,也就越容易在代码质量出问题时不知道从哪里入手。反而是写过一点代码、哪怕只是了解基本逻辑的人,能更快地利用AI。因为你有能力判断“这段代码在干什么”以及“它为什么不符合预期”。所以如果你想尝试Vibe Coding,我建议先别急着开干,花半天时间把需求拆成一句话、两句话、三句话,每句话都问自己一遍:这句话换成让一个外包工程师去做,他能直接开工吗?如果能,AI大概率也能给你靠谱的产出。
1.1 Vibe Coding到底是在解决什么问题
它解决的核心问题有三个:启动成本、切换成本和表达成本。启动成本指的是从零开始搭一个项目骨架很费事,配置环境、初始化目录结构、写第一个可运行页面,这些事重复且无聊,AI做起来非常顺手。切换成本指的是当你需要换一种技术方案或者新增一个小功能时,不用满项目找文件改来改去,直接把需求讲清楚,AI自己会去定位和修改相关的代码。表达成本是最有意思的一点:程序员用代码表达,但产品经理和老板用直觉表达,最后常常在“实现细节”上产生大量的来回拉扯。Vibe Coding让“用自然语言表达”直接变成了“可运行的代码”,等于把翻译这个环节也压缩了。
但不要误会,这不是说程序员这个岗位消失了。我目前接触到的所有成功案例里,真正的高效组合都是“人负责做选择题,AI负责做填空题”。人决定产品边界、交互路径、数据怎么流转、异常情况怎么处理,AI负责把这些决定变成具体的函数、页面和API调用。遇到一个功能有两种实现思路时,让AI把两种都写出来做对比,反而比人自己纠结半天更高效。
1.2 合适与不合适的人群,提前对号入座
先说适合的。第一类是独立开发者,一个人就是一支队伍,平时最耗时间的是写CRUD接口和页面样式,这类工作交出去能省一大半时间;第二类是产品经理,想快速验证一个想法能不能成立,不用等排期,直接让AI搭一个能点击的Demo给用户试;第三类是编程教学场景,学习者看AI生成的代码反过来理解某段逻辑怎么实现,比光看书快得多;第四类是技术负责人,在做技术选型时可以快速让人写几个不同框架的对比Demo。
不适合的也有几类。一类是“完全零基础且不想学任何基础概念”的人。AI会问你“用哪个框架”“数据存哪里”“要不要用户登录”,如果你连这些词是什么意思都不知道,很容易胡乱回答然后把项目带沟里。第二类是处于高合规要求场景的团队,涉及核心交易、用户隐私、复杂权限控制时,现阶段直接让AI全权处理风险还是偏高,AI适合做架构里的零部件,不适合做整个保险柜。第三类是希望AI一次性生成几百个文件那种大项目的人,受限于上下文长度和生成稳定性,这类需求大概率会失败,正确姿势是把大项目拆分成十几个小迭代。
2. 工具链的一手体验:选对“搭子”比努力更重要
我用Vibe Coding的方式跑过好几个小项目,工具选择的差别对效率和产出质量影响非常大。市面上的AI编程工具大致分两类:一类是对话式通用模型,你打开一个聊天窗口,把需求发给它,它给你返回大段代码;另一类是深度集成在编辑器里的AI编程环境,它能看到你当前项目的全部文件,能自动读取报错信息,能帮你做跨文件修改。两者不是替代关系,而是搭档关系。
对话式通用模型的优势在于“宽”。你什么都可以问,不限于当前项目,比如“帮我对比两种数据库方案的优劣”“这个算法的最优实现是什么”,它像一个懂很多但手里没有你上下文的技术顾问。劣势也很明显:它看不到你项目的真实状态,给出的代码经常要你手动去粘贴到指定文件,一旦项目文件多了,来回搬运就非常痛苦。用这种模式做单文件脚本、算法验证、一次性工具,体验很好,做到五六个文件以上的小系统就开始别扭。
编辑器内嵌的AI编程工具优势在“深”。它能感知当前打开的文件、最近的编辑记录、编译报错,还能在多个文件之间联动修改。我试过的典型场景是:把光标放在一个报错处,让AI解释报错原因并给出修复方案,它直接把改动写在对应的上下游文件里,重构代码时的体感非常接近“和一个熟悉这个项目的同事结对编程”。劣势是这类工具通常要求一定的学习成本,快捷键、对话面板模式、规则文件配置,刚接触的一两天会有点手忙脚乱,但适应之后收益很大。
2.1 IDE内嵌型工具与对话型模型的差异
用生活类比来理解,对话型模型像一个“知识渊博但不了解你公司情况的顾问”,你每次都要从头介绍背景,它给你的建议是基于通用经验的,偶尔惊艳,但需要你自己判断怎么落到具体项目里。IDE内嵌型工具则像一个“坐在你旁边的协作者”,它能看到你写了什么、哪里报错、改了哪里,你说话不需要太长,因为上下文已经在它脑子里了。这两种工具的配合策略我建议是:项目初期、需求还不清晰时,用对话型模型做头脑风暴和方案探索,把几个候选方案写出来对比;项目进入实际编码阶段后,全部切到IDE内嵌工具,让AI在项目上下文里干活。
还有一个很多人没意识到的点:模型的上下文管理能力至关重要。无论是对话型还是IDE内嵌型,工作时都要在上下文里装下“项目信息+需求+已有代码”。如果你一边写一边聊天,聊到很长的对话后,AI会忘掉最开始的需求细节。我的习惯是,清空对话时不心疼,重新开一个新对话,把项目核心说明文件或者规则文件拖进去,再开始新任务。通过这种高频重置对话上下文的方式,AI的稳定性和准确性反而更高。
2.2 我用下来的选型参考与切换策略
目前主流的AI编码工具集中在几个方向上:一部分模型跑在云端,响应快但需要联网;一部分模型可以在本地部署,隐私性好但模型能力弱一档;还有一类是混合模式,代码补全走本地小模型,复杂任务调用云端模型。我个人的选择原则很简单:日常补全和重构交给速度快、集成度高的工具,复杂架构设计交给能力更强的大模型,用对话形式把讨论清楚,再把结论扔回编辑器让AI落地实现。
切换策略上有一条经验值得分享:不要让多个AI工具同时在一个项目里工作。每个工具对代码的改动风格不同,同时用两个工具很容易出现一个工具改了A文件、另一个工具不知道又在A文件上做了一版修改,最后合并出大量冲突。我通常一个项目只选一个主力工具,需要聊天讨论时另开对话窗口,拿到结论后再让主力工具负责落地。这样可以减少很多“AI互相打架”的乌龙。
3. 从模糊想法到能跑的Demo:一条可复现的流程
很多新手尝试Vibe Coding失败,不是AI不行,而是流程没理顺。我踩了十几回坑之后,摸索出一套从“模糊想法”到“能跑的Demo”的标准化流程,分享给大家。整套流程的核心思路是:不要把AI当成一个“一次生成完整产品”的魔法盒,而是把它当成一个“按任务书逐项施工”的施工队。先写任务书,再拆步骤,再逐项确认。
第一步,把产品想法写成一页纸的描述。不需要格式规范,但要写清楚四件事:给谁用、他要完成什么任务、任务里涉及哪些关键步骤、哪些地方可以暂时粗糙。第二步,把这一页纸喂给AI,让它列出一个“实现这个Demo所需的技术任务清单”,比如环境初始化、页面搭建、数据存储、接口调用。第三步,逐个任务让AI实现,每完成一个就本地跑一遍确认。第四步,全部完成后整体测试一遍,把发现的问题再作为新任务单独发给AI修复。这套流程听起来简单,但每一步都有很多细节可以优化。
3.1 先把一句话需求翻译成AI看得懂的“任务书”
我在这里举个例子,同样一句“做一个记录健身打卡的网页”,你直接发给AI和翻译成任务书后的效果是完全不同的。直接发的后果往往是AI给你一个花花绿绿的页面,数据存在浏览器内存里,一刷新就没了,也没有用户概念。任务书版本应该是这样的:“做一个健身打卡网页,用户打开后可以输入今天的运动名称和时长,点击提交后打卡记录保存到本地,页面下方展示最近一周的打卡列表,按日期排序。视觉风格简洁,移动端优先。”这段描述并没有变长很多,但信息密度完全不同:它明确了数据存储方式、核心流程、展示逻辑、视觉风格和平台适配。AI拿到这种任务书,生成的代码基本可以直接用。
我建议你把这个“任务书”形成一个固定文档放在项目目录里,每次开新对话或者让AI干活之前,都先把这份文档发一遍。它的作用相当于给AI建立了一个“项目记忆锚点”,不管中间聊了多少轮,只要每次任务都以这个任务书为基准,AI的产出就不会跑偏。
3.2 让AI分步开发,别一上来就憋大招
我犯过最严重的一个错误,就是在一次对话里让AI生成一个完整的全栈项目,包含前端页面、后端接口、数据库表结构、用户登录状态管理。那次对话最后的输出差不多有两千行代码,看起来什么都有,实际上哪哪都连不上。前端调用的接口字段名和后端定义的对不上,数据库字段命名风格前后不一致,一个页面里引用了不存在的工具函数。那次体验让我彻底放弃了“一次性生成完整项目”的思路。
正确的做法是拆成小任务。这背后有一个很现实的原因:AI在生成长序列代码时,前期的代码规范很容易在后期被忘记,也就是所谓的“长上下文注意力衰减”。每个任务控制在生成一百到三百行代码的范围内时,出错率会大幅下降。拆任务还有一个附带好处:每完成一个子任务,我都能在本地跑起来看效果,有问题当场反馈给AI修正,不让问题滚雪球。这个“边走边看”的节奏,是Vibe Coding能保持质量最重要的习惯。
3.3 用规则文件锁定架构方向,避免“改一个崩十个”
项目一旦超过几个文件,AI改代码时经常会“只改眼前不管全局”。典型场景:你在A文件里改了一个函数的返回结构,AI改好了这个函数,但没去更新调用这个函数的B、C两个文件,结果运行直接报错。解决这个问题,我是用规则文件来锁架构。所谓规则文件,是项目里一份特殊的文本文件,里面写清楚项目的基本约定,AI在改代码前会先读这份文件来理解项目规范。
我会在规则文件里写这些内容:项目使用什么技术栈、目录结构有哪些约定、核心数据模型长什么样、公共函数放在哪个文件、命名规范是什么。每次开新对话或让AI执行修改类任务时,我会在任务消息里加一句“先读一下规则文件,按里面的约定执行”。这个动作的成本极低,效果却很明显。AI在动手改代码之前会先去对照规则,不会凭感觉自由发挥,跨文件改动的出错率下降了不止一半。
4. 提示词质量就是产品质量
在Vibe Coding这套工作流里,提示词是生产资料的起点。很多人觉得提示词就是“把需求说清楚”,但实际体验下来,提示词好不好不仅仅是“说清楚没说清楚”的区别,更像是两种交流方式:一个像在跟同事闲聊,说个大概方向,他说“我懂了”然后做出来一个你想不到的东西;另一个像在下达施工任务书,有背景、有目标、有约束、有验收标准,做出来的东西基本能一次到位且可控。后者才是我要的状态,所以这里把提示词拆开聊。
一个好用的提示词,核心有几个要素:角色设定、任务背景、关键约束、输出格式、验收标准。角色设定决定了AI看问题的角度和术语体系,是“资深前端工程师”还是“产品经理”,产出的代码风格完全不同。任务背景让AI知道这活儿在什么上下文里做。关键约束比如“不要引入额外的第三方库”“所有接口都要做参数校验”,决定了产出的边界。输出格式比如“先给改动文件清单,再说具体改动”,直接影响后续工作流。验收标准最重要的作用是给AI一个“写完怎么算写完”的明确参照,避免它自己觉得完成但实际上缺了东西。
4.1 一份能直接用起来的提示词模板
下面这份模板是我这几个项目里一直在用的,你可以直接复制过去改成自己的:
你在参与开发一个[项目名称]项目,请阅读项目规则文件后完成以下任务。 任务背景:当前项目是一个[项目简介],主要功能包括[功能列表]。本次任务属于[新增功能/修复缺陷/代码重构]这一类。 任务目标:请实现[具体功能描述],需要满足以下几点: 1. [功能点1,尽可能具体,包括交互方式、数据来源、呈现位置] 2. [功能点2,包括异常处理方式] 3. [功能点3,包括性能或兼容性要求] 关键约束: - 不要修改与本次任务无关的文件 - 不要移除已有功能 - 新增依赖库之前先说明理由 - 代码风格保持一致,遵循项目规则文件中的命名规范 输出格式: 先输出本次改动的文件清单,再按文件逐一说明改动点,最后说明需要人工确认或测试的地方。 验收标准: - [功能点1]在本地运行后表现符合预期 - [功能点2]的异常分支不会导致页面崩溃 - 平台兼容性:在[目标平台]上验证通过这份模板看似啰嗦,但每一步都有用途。角色设定和任务背景防止AI用错误的上下文理解任务;功能点里写得越具体,AI越不容易自由发挥;关键约束里“不要移除已有功能”这条特别重要,因为AI在重构时经常顺手删掉看起来“没用但实际在跑”的代码;输出格式则把执行过程变成可审阅的流程。
4.2 提示词的迭代:从会用到好用之间差两次追问
大多数人和AI协作时的过程是:发一段需求,得到一个结果,如果不对,重新发一段需求。这个循环效率很低,因为每次重复需求描述都等于重新建立了上下文。而我发现,在AI给出初步结果后,通过追问和补充约束来迭代,效率反而更高。
比如你让AI加一个导出功能,它第一次给的方案是在前端直接生成文件并下载。你其实是想导出到服务器某个位置,然后生成一个下载链接。如果你直接说“不对,不是这个意思”,AI大概率会再给一个方案,但过程中缺乏上下文承接。更高效的写法是:“方向有偏差。我要的不是前端生成,而是后端生成文件后提供链接。请把改动调整成这样:后端新增一个接口,接收查询参数后生成文件,返回文件路径;前端点击按钮时调用这个接口并跳转到返回的链接。”这种反馈方式不是重新描述一遍需求,而是明确指出偏差点,给出期望实现路径。多一两次这样的迭代,提示词就从“能用”变成“好用”了。
4.3 提示词效果对照:一句话命令与结构化描述
说了这么多,我用一个对照表来展示同样的需求,两种提示词产出的差距有多大。
| 场景 | 一句话提示词 | 结构化提示词 | 效果差异 |
|---|---|---|---|
| 注册页面 | 给我一个注册页面 | 做一个注册页,包含手机号、验证码、密码三个字段,前端校验格式,请求发送到 /api/register,返回错误信息要展示在表单下方 | 前者可能给一个静态表单;后者直接生成可对接接口的完整页面 |
| 数据排序 | 把列表按时间排序 | 列表数据从接口返回后,在渲染前按时间字段倒序排列,时间格式兼容“2024-05-01”和“2024/05/01”两种 | 前者只处理标准格式,后者考虑兼容性和渲染时机 |
| 报错修复 | 程序报错了,帮我看看 | 运行时报错信息如下……请先分析可能原因,再给出修改方案,改动只涉及报错文件和相关依赖,不要动其他文件 | 前者可能泛泛给建议,后者能定位到具体修复点 |
这组对照说明了一个观点:AI编程的下限取决于模型能力,上限取决于你的表达能力。提示词不是作文,而是工程文档的一种变体。你输入的信息越结构化,产出的代码就越接近预期。
5. 自动构建不等于躺平:质量防线怎么守
Vibe Coding带来一个很真实的诱惑:产出速度变快了,人很容易放松警惕,觉得“AI写的应该没问题”。这个错觉在头几次成功跑通Demo时特别强烈,但项目复杂到一定程度就会反噬。我现在的工作习惯是:始终保持一个“代码审查”环节,只是这个环节由人和AI协同完成。不是说AI写的每个字都要人读一遍,而是要用“分层过滤”的方式检查结果,既保留效率,也不放走低级错误。
第一层过滤是构建层,让代码能顺利跑起来。AI写完一个功能后,第一时间在本地构建一遍,有没有语法错误、类型错误、依赖缺失,构建器会直接报出来,把报错信息扔给AI修复,这个循环加速很快。第二层过滤是测试层,把关键流程手动或自动跑一遍,比如注册登录流程、核心操作链路。第三层过滤是人类判断层,看AI实现的功能是否真的符合产品预期,有没有“实现得很精致但逻辑不对”的问题——这一层没办法外包,必须人自己看。
5.1 代码审查要做,但方式可以换
很多没有代码基础的朋友会问:我不会看代码怎么办?我的回答是:你看的不是“代码细节”,而是“需求语义”。你在验收一个功能时,重点检查的是这个功能在边界条件下表现如何。举个例子,你让AI做一个购物车功能,它实现了加购、删除、结算,看起来很好。你可以追问:“如果用户重复点击加购同一件商品,数量是累加还是覆盖?”AI大概率会给出当前实现的具体行为。你听完后发现不符合你的预期,再让它改。这个过程不需要你自己读代码,你是通过“提问—听反馈—发现偏差—要求修正”的方式完成审查的。
这个方法特别适合产品经理和技术管理者。它能让你在不懂代码实现的情况下,依然对AI产出质量保持可控。只要你能把需求拆到足够细的颗粒度,用关键词去检查AI的输出是否符合预期,Vibe Coding的整体质量就能保持在一个很高水平。
5.2 用AI验证AI:让模型当同事帮你Review
在代码审查这件事上,还有一个少有人提但很实用的技巧:让一个AI去检查另一个AI写的代码。我会特意开一个新对话,不加项目上下文,直接把代码贴进去,加上这样的指令:“请你以一个资深开发者的身份,审查这段代码,关注三个问题:一是有没有明显的逻辑漏洞;二是有没有安全隐患;三是有没有不必要的复杂实现。不需要逐行解释,只输出发现的问题和建议。”你会发现,第二个AI因为没有参与生成过程,视角反而更客观,经常能发现第一个AI遗漏的问题。
这个“AI审AI”的方法也有局限:如果同一个底层模型生成的代码和审查意见都来自同一个“思考惯性”,那它能发现的问题会有限。所以我会轮换使用不同提供方的模型相互审查,效果会好不少。这个方法成本很低,但相当于给你的工作流加了一份额外质检,在项目进入正式发布前非常推荐做一轮。
5.3 边界感:哪些环节绝对不能全权交给AI
虽然Vibe Coding很强大,但我的经验里有几类事情不适合让AI全权处理。第一类是核心权限与账号体系设计,涉及用户登录、会话管理、权限等级这类安全敏感模块时,AI生成的代码可以当参考,但最终方案一定要人来审。原因很简单,这类逻辑的安全性往往在细节里,比如“token过期后怎么刷新”“用户删除后遗留数据怎么处理”,AI很容易生成“看起来对但实际上有漏洞”的实现。第二类是数据迁移和数据结构变更,牵扯到老数据兼容、字段改名、历史数据清洗,这类迁移脚本一旦出错,恢复成本极高,我会让人先写出明确迁移方案,AI只是执行。
第三类是业务规则复杂且充满例外情况的场景。比如一个优惠系统,满减条件、叠加规则、使用门槛、排除商品列表,AI很容易在实现某个具体规则时忘记另一条规则的存在。这类系统适合把规则列成一张表,让人口令式地逐条核对AI产出,而不适合直接说“做一个优惠系统”让AI自由发挥。守住这几条边界,Vibe Coding提供的高效率才不会被翻车的高成本拖垮。
6. 常见翻车现场与排查心得
Vibe Coding用得越多,翻车的姿势就越多样。这里整理了我遇到过的典型问题和排查心得,都是真金白银换来的经验。
第一个高频问题是“AI生成了代码但是运行不对”。比如页面打开白屏,控制台报了一堆错误。我的处理步骤通常是这样的:先把报错信息完整贴回给AI,让它解释出错位置和原因;如果AI给的解释听起来合理,就让它直接修复;如果不合理,我会手动看报错对应的代码行,确认是不是AI用了不存在的API或者引错了路径。多数情况下,白屏都是因为“引用了没安装的依赖”或者“API调用名写错了”,属于低级的机械错误,AI修复一轮基本能解决。
第二个高频问题是“AI改了A功能,B功能跟着坏了”。这种情况通常发生在跨文件重构时,AI只看到了局部代码,没有更新调用的下游。我的解决思路是,在让AI做重构前,明确告诉它“这是一个影响多个文件的改动,请先搜索所有引用该函数的地方,列出来再动手”。如果仍然出现破坏,就手动把B功能的报错信息发给AI,让它回去补修。想彻底减少这类问题,还是得靠前面说的规则文件约束和任务拆分。
第三个高频问题是“AI完全误解了需求”。这种翻车最让人头疼,因为AI产出的代码单看可能没有问题,但整体方向就是错的。比如你要的是一个“扫码登录”,AI做成了“手机号一键登录”。遇到这种问题,不要试图通过反复描述去掰AI,而是先停止当前任务,把需求重新写成一页纸,对照“任务书模板”逐项说清楚,再让AI重新出方案。通常这个做法比在错误基础上来回修补快得多。
第四个常见问题跟工程环境有关:AI给出的代码在别人的机器上能跑,在自己电脑上报错。这往往是因为环境版本差异,比如依赖版本、Node版本、Python版本。排查思路是:先看报错里的版本信息,确认本地的运行时版本和AI生成代码所依赖的版本是否一致;如果不一致,优先调整本地环境而不是让AI去兼容一个很老的环境。这里分享一个我个人的经验心得:AI生成的代码比较激进,经常使用较新的语法特性,遇到兼容性问题时,第一时间查一下语言或框架的版本要求,别急着怀疑AI写错了。
为了更直观,我把几个常遇问题整理成了一个速查表,方便在实际操作中对照:
| 现象 | 可能原因 | 排查顺序 | 推荐解法 |
|---|---|---|---|
| 页面白屏,控制台报变量不存在 | 引用了不存在的依赖或函数名写错 | 先看报错变量,再查引用来源 | 把报错信息发给AI让它修复,或手动修正导入路径 |
| 构建报版本不兼容 | 本地运行时版本过低 | 看报错里的版本要求 | 更新本地环境到目标版本,优先于改代码 |
| 功能A正常,功能B报错 | 跨文件改动遗漏了调用方 | 搜索所有引用点 | 让AI先列调用清单再动手,或单独补发B的报错 |
| AI实现方向和需求完全相反 | 需求描述太模糊,AI自由发挥 | 重新审视初始提示词 | 用结构化任务书重写需求,暂停修补 |
这套排查办法的核心逻辑是:不要在上游问题没搞清楚之前就让AI反复修改,先定问题类型,再有针对性地让AI修改,效率会高很多。实际操作中还有一个小技巧:把每次让AI改代码前后的文件版本用系统自带的版本管理工具记录下来,如果连续改两三次还没修复,直接放弃这次改动,回退到之前能跑的版本重新换个思路来。这个习惯能避免在错误方向上反复浪费上下文。
关于Vibe Coding,我个人的体会是:它并不会取代开发者的判断力,反而是把判断力的重要性提到了前所未有的高度。过去写代码,判断力体现在“怎么实现”;现在用AI,判断力体现在“要什么”和“怎么验收”。你越能清楚地描述需求、区分优先级、识别偏差,AI给你的回报就越大。反过来,如果你自己都没有想清楚什么是“对的”,AI只会帮你更快地做出一个“错的”。所以我的建议是:工具可以大胆用,但思考不能省。如果你正准备把手头的一个小想法交给AI去构建,不妨先从写一页纸的任务书开始,把它当成写给一个特别聪明但特别较真的实习生看,你很快就会感受到Vibe Coding真正的效率来自哪里。