资讯详情

资讯详情

零基础实战Vibe Coding:普通人用AI从0到1做出小工具

最近一年被问得特别多的一句话是我完全没写过代码现在让 AI 帮我做个小工具到底靠不靠谱以前听到这种问题我一般会说你先去补点基础再谈。但这两年 Vibe Coding 这个概念火起来以后我的答案已经变了靠谱但前提是你真的把它当成一门手艺去练而不是当成一句咒语去念。Vibe Coding翻译成大白话就是用聊天的方式驱动编程。你负责描述想要什么AI 负责生成代码、修 bug甚至独立跑完一个小任务。这篇文章我想把在实战课里反复讲的那些东西整理出来聊聊普通人从零上手 Vibe Coding 到底要经历哪些阶段、会踩哪些坑以及怎么一步步走到能做出真正能用的小工具这一步。不管你是运营、产品、老师还是学生只要愿意花几个小时做一次完整的实战这篇文章里的内容你都能用上。1. 先把概念聊透Vibe Coding 不是在偷懒而是在换一种干活方式1.1 什么是 Vibe Coding从手写代码到描述意图Vibe Coding 这个概念在技术圈火起来最初是指一种开发状态你不再从头到尾控制每一行代码而是让自己沉浸在对需求的描述和与 AI 的对话里让 AI 把想法变成代码。它和传统开发最大的区别在于问题定义权和代码书写权被分开了。传统开发里写代码是一个连续过程需求分析、架构设计、编码、测试、部署每一步都高度依赖人的专业能力。而在 Vibe Coding 的工作方式里中间那段把需求翻译成代码的工作被 AI 接管了。你要做的是把需求说清楚、把结果验证好并且在 AI 出错时引导它修正。这里的难点在于很多人以为把需求说清楚是一件很自然的事其实不是。需求描述本身就是一门技能而且是最容易被低估的一门技能。为了让你直观感受我举个例子。同样一个需求做一个可以记录每日饮水的网页工具点一下加一杯显示今天喝了几杯。传统方式你至少得会 HTML 怎么搭骨架、JavaScript 怎么监听点击事件、数据怎么存到本地。Vibe 方式你只需要把这句话原封不动发给 AI它会给你几段代码保存成网页就能直接用。你不需要看懂那几段代码到底写了什么但你必须知道点一下加一杯这个需求是不是真的被正确实现了。再说一个很多人的误解Vibe Coding 不是不写代码而是编程的方式变了。你在过程中仍然会接触到代码只是你的主要任务从凭空创造代码变成了阅读、修改、审查代码。一个完全不懂代码的人在连续做了几个小项目之后也会自然积累出一些代码感觉比如 JavaScript 文件大体长什么样、一个函数大概由哪几部分组成。这就是为什么我坚持说它是一门手艺而不是一个魔法。1.2 谁适合玩谁不适合玩普通人到底能不能学会先说适合的。第一类非技术岗位的上班族。运营、产品、编辑、设计手里一堆重复的表格整理、网页操作、信息汇总工作过去只能求着技术部门排期现在可以自己做一个小工具解决。第二类正在学编程的学生。用 AI 做陪练能大幅减少在语法和配置上挣扎的时间把精力放在问题本身。第三类想快速验证想法的创业者。做一个最小可行产品原型给种子用户试比憋一个月开发再上线高效太多。第四类传统程序员。不想再为脚手架代码和样板代码浪费时间想专注在核心业务逻辑上。再说为什么有人不适合。第一类人期待纯靠 AI 生成一个商业级完整产品却完全不愿意碰部署、运维、性能优化。第二类人对代码零基础又拒绝了解任何基本概念遇到报错就慌只会复制粘贴。后者不是不能玩是心态需要调整把 Vibe Coding 当成一门需要持续练习的课而不是一个装了就一步到位的软件。我印象比较深的一位学员是做社群运营的同学完全不懂代码。她学会 Vibe Coding 之后用 AI 做了一个社群成员信息登记页面还学会了怎么把数据导出成表格。她后来跟我复盘说能做成不是因为自己变聪明了而是因为她愿意把需求一步步拆小每次 AI 改完都认真看结果、验证效果。这句话基本概括了普通人玩转 Vibe Coding 的全部秘密拆解需求、反馈问题、持续迭代。关于普通人到底能玩到什么程度这个问题我的判断是你大概率不会成为系统架构师但你能解决自己生活和工作中百分之八十的小问题。这个上限已经比很多人想象中高得多了。2. 工具与准备工作不装糊涂先把环境搭明白2.1 用顺手的 AI 编程工具都有哪些派系Vibe Coding 的工具生态已经非常丰富但总结下来就是三大流派。第一流派编辑器内嵌的 AI 助手。装在你常用的代码编辑器里主要作用是自动补全、解释代码、局部修改。优点是和你原来的编码流程融合得最好缺点是仍然需要你自己搭建项目结构、管理文件。适合已经有代码基础的人。第二流派以 AI 为核心的独立编程应用。打开就是一个对话窗口你可以把整个项目文件夹拖进去它能直接读写文件、运行命令、自查错误。它对普通人最友好因为你不需要理解和搭建开发环境只要会点击、会描述。我推荐零基础的人直接从这个流派起步。第三流派命令行 AI 代理。在终端里给 AI 划分好权限范围丢一句帮我做一个小工具它会自动规划步骤、创建文件、测试运行。这类工具效率极高但要求你熟悉基本终端操作和目录结构新手直接上手会有一定压力。选工具时我有一个标准也是我常年挂在嘴边的一句话新手优先选你能亲眼看见运行结果的工具。所谓看见结果就是它让你双击一个 HTML 文件浏览器里马上能出现页面点按钮有反应。反过来如果工具生成一大堆代码文件但你根本不知道它有没有跑起来那新手很容易陷入迷茫。另外优先选支持整个项目上下文的工具而不是只能基于单个文件对话的工具。项目稍微变大上下文连续性就会成为决定成败的关键。三类工具的定位差别有需要的话可以直接对照这张表来选派系上手难度主要适合场景典型用法编辑器内嵌助手中等已有代码项目的局部修改选代码让它改或解释报错原生 AI 编程应用低从零搭新项目、快速原型拖入项目文件夹直接对话下达需求命令行 AI 代理较高自动化多步骤任务输入一句目标让它自动规划执行2.2 开课前必须做好的三件小事账号、项目目录、版本管理别小看准备工作我见过太多人一上来就急着让 AI 写代码结果半天白干因为准备工作没做好。第一件事账号和额度。AI 编程工具通常需要登录用量大了可能涉及套餐。开始实战之前先弄清楚免费额度有多少、按什么规则消耗、用完之后会不会中断服务。不要等到项目做到一半对话突然被限制那会非常被动。如果你打算持续学习和练习选一个基础付费套餐反而省心。第二件事项目目录管理。在本地磁盘里建一个专门放 AI 项目的文件夹每个项目单独占一个子目录比如 study-card、todo-list、water-tracker。为什么强调这一点因为 AI 工具读写文件是基于项目目录的。文件如果散落在桌面工具有时候会读错位置甚至把新文件生成到不相关的地方。我自己在课上见过几个学员AI 项目散了一桌面最后完全找不到哪个文件是哪个项目的。第三件事Git 版本管理。我不想把 Git 讲得太复杂普通人记住三个命令就够用git init 让当前文件夹进入版本管理状态git add . 把当前所有变更暂存git commit -m 完成了保存功能 给当前状态拍一张快照。每次 AI 改完一批代码并且你测试通过之后提交一次版本。万一 AI 哪次改崩了输入 git checkout . 就能回到上一次成功状态。我强烈建议你把这几个命令抄在小纸条上贴在显示器侧面。注意版本管理真的不是可选项。Vibe Coding 项目代码变动频率极高AI 又是自动改文件的万一它在重构时把你之前修好的东西覆盖了你连找回来都难。我的原则是开始任何一轮新的修改之前先确保上一个可用版本已经提交到 Git。3. 第一堂实战课让 AI 从零给你搭一个能跑的小项目3.1 需求拆解不要一上来就说给我做个网站实战课里最常见的问题是学员上来就甩一句给我做一个网站。这句话在 AI 那里只会换来一堆泛泛的代码大概率不是你想要的东西。问题不在于 AI 不够聪明而在于需求太模糊。网站的边界太大了——是个人博客、产品介绍页、信息收集表单还是工具应用要不要登录用什么技术这些不搞清楚AI 只能按最笼统的模板乱猜。正确的做法是把需求拆成一条一条的小描述。我在带一个完全没写过代码的学员做每日学习打卡工具时写了这样几条需求页面顶部显示累计打卡天数和累计学习时长页面主体有输入区能输入学习内容、学习时长点保存之后记录出现在下方历史列表里列表里每条记录可以单独删除数据在关闭浏览器后再次打开依然存在。每条需求都独立、可验证这就是需求拆解的黄金标准。练习方法是在跟 AI 说需求之前先拿一张纸把你想做的东西写下来。写的时候让每一条都变成完整的一句话并且不要出现等等这种含糊词。写完之后即使你完全不懂代码也能把这些描述整理成 AI 能理解的需求清单。再举一个更小也更贴近普通人的例子如果你想要一个倒计时提醒工具不要只说做一个提醒工具而是说我想做一个网页输入一个时间长度点击开始后倒计时倒计时结束时播放提示音同时弹出一个弹窗。这个描述几乎可以直接对应 AI 的生成目标它不大需要猜。3.2 完整对话复盘从一句话到能运行的页面为了让不了解的朋友知道真实过程长什么样我把课程里最经典的打卡项目复盘一遍。第一步我向 AI 发出的指令是你是一名熟悉前端开发的工程师。请帮我做一个纯前端的每日学习打卡页面用 HTML、CSS、JavaScript 实现数据保存在浏览器 localStorage 里。功能包括输入学习内容和学习时长点击保存后加入历史记录列表每条记录可以删除页面顶部显示累计打卡天数和总学习时长。界面简洁中文显示。AI 很快生成了一段代码大致结构长这样!DOCTYPE html html langzh head meta charsetUTF-8 title每日学习打卡/title /head body !-- 输入区 -- !-- 统计区 -- !-- 历史记录列表 -- script // 保存与渲染逻辑 /script /body /html我把代码保存成 index.html双击打开页面正常显示。输入内容点保存列表里出现了记录。看起来一切顺利但没有。第二步我发现了一个问题刷新页面后列表清空了。我立刻向 AI 反馈刷新页面后数据丢失。我点击保存的时候数据是有的刷新就没有了。请检查初始化时有没有从 localStorage 里读取已有记录。AI 分析了原因代码里只有新增时写入了存储页面加载时没有把存储数据读回来渲染。它修正之后再刷新数据正常保留。第三步我继续提需求用户删除一条记录后顶部统计的总时长没有重新计算。请修复并且删除时同步删除 localStorage 里的对应数据。AI 调整代码后我测试删除、刷新逻辑都正常了。第四步我想加一个按日期筛选功能。这时候我特意补充了一句请在原有代码基础上修改不改变现有功能结构。这句话很关键是为了防止 AI 认为可以自由重构把本来已经没问题的代码又改乱了。这一轮对话复盘的核心要点是什么每轮反馈其实都在用同一个结构向 AI 描述问题我做了什么操作、我看到了什么现象、我期望的结果是什么。这三个元素齐全AI 才能真正听懂你要什么。你只丢一句有个 bug它就只能靠猜。3.3 验证与收尾AI 说完成了不等于真完成了Vibe Coding 过程中有一个很容易踩的坑AI 回答已经完成时你直接信了。但在它眼里完成指的是代码生成完毕、逻辑上自洽。至于实际运行环境如何、兼容性、边界情况它并没有真正验证过。所以你必须建立自己的验收机制。我的习惯是三步验收法功能测试按正常流程走一遍依次输入、保存、刷新、删除、再刷新边界测试故意做刁钻操作。比如输入空内容点保存、输入一个特别大的数字、快速连点保存按钮十次看看页面会不会报错或数据混乱跨环境测试换个浏览器打开同一个文件确认渲染效果和功能都正常。每次开始测试之前先提交一次 Git 版本。测试如果发现问题就把现象反馈给 AI修完再测。全部通过之后再提交一次版本。循环几轮之后项目才真正开始有可靠的样子。还有一个小提示如果 AI 在连续修改里开始只改表面不改本质同一个问题修了三次还在说明它的上下文已经混乱了。这个时候不要硬聊新建一个对话把完整需求、当前代码、最新错误重新贴进去继续提问效率会高得多。4. 和 AI 打交道的关键技巧提示词与协作边界4.1 提示词的正确打开方式让 AI 听懂你的真实意图很多初学者以为会说话就会 Vibe Coding结果聊了半天AI 给的东西完全不是自己想要的。根本原因在于人类对话有大量隐含的上下文和共识AI 没有。你说做个好看的界面它不知道你认为的好看是深色还是浅色、是圆角还是直角、是紧凑还是宽松。我自己总结了一个四件套提示方法直接套用就能明显改善生成质量角色设定给 AI 一个身份标签。比如你是一名熟悉用户体验的前端开发者任务描述用一个短句说清楚核心任务。比如请生成一个待办清单网页约束条件写清技术栈和边界。比如只用 HTML 和原生 JavaScript不用任何框架数据存储用 localStorage页面中文化验收标准定义你能检查的效果。比如打开页面输入内容按回车能加入待办列表刷新页面后待办还在点击删除后待办消失并且刷新后依然消失。为了让你更直观地感受差距这里给几个实际对照不理想的提示词更有效的提示词帮我做一个记账软件请生成一个个人记账页面能输入金额和类别保存到本地并按天汇总支出这个页面不好看改一下页面间距太挤请把侧边栏宽度改窄一些列表每行高度加高去掉边框出错了帮我修点击保存按钮后控制台报错xxx。这个错我猜测和 xxx 有关请检查相关代码四件套不是一个僵化模板它实际上在逼你把需求想清楚。练多了你会发现写提示词本身就是思考过程你到底要什么、边界在哪里、怎么验收才算完成。4.2 协作里的三次对话法则以及何时该打断 AI我在实战课里反复强调一个三次对话法则同一个问题你跟 AI 描述、修改、再描述三轮之内解决不了就立刻停下换成更小的问题继续问或者换一个工具、换一种思路重新提问。为什么是三次因为 AI 在同一个上下文里连续失败大概率是对你前面的描述产生了深层误解继续硬问只是在错误认知上加大力度。正确的做法是把当前代码保存下来提交一个 Git 版本新建一个对话窗口把完整需求、当前代码、错误现象重新粘贴重新开始。新开对话这个动作特别有用因为长对话会把早期约定慢慢稀释模型容易忘掉开始时说好的规则。重开相当于让一个状态清爽的同事重新接手这个项目大多数情况下比在混乱上下文里继续纠缠高效得多。打断 AI也是一门功夫。有些 AI 编程工具在自动执行时会一口气生成十个文件但其中八个不是你需要的。这时候你需要提前给它划好边界。下达任务的时候就说清楚不要修改其他文件只生成一个 HTML 文件不要引入任何框架和依赖。如果它已经开始改你没预期的文件马上发消息让它停止然后用 Git 回退到之前的版本。我见过一个特别典型的教训某学员让 AI帮我加一个导出 CSV 功能结果 AI 为了支持导出把整个项目从纯 HTML 改成了前端工程结构页面直接白屏。如果他能在第一条消息后面补一句不要修改项目结构不要引入框架这场事故根本不会发生。5. 高频翻车现场与排查方法实录5.1 最常见的五类问题速查表Vibe Coding 用多了之后你会发现AI 犯的错其实非常集中。我把最常见的问题整理成一个速查表建议直接截图存下来。常见现象产生原因对应解法AI 引用了不存在的第三方库模型记忆里的库名过期甚至虚构要求它改用标准库实现或先解释用途再确认新功能加上了旧功能崩了修改时没考虑已有逻辑依赖每次都要完整回归测试开始前提交 Git 版本页面能打开但按钮没反应事件绑定或 DOM 选择器写错打开浏览器控制台复制完整报错给 AI越改越乱代码逻辑重复上下文太长模型忘记前期约定新开对话重贴需求与最新代码功能正确但是运行卡死存在死循环或反复渲染问题让 AI 检查循环条件附上触发操作路径这里最想展开说一句的是第一类。AI 生成代码时有一种幻觉倾向它可能引用一个看起来很像样的库但这个库实际上不存在或者早就不维护了。怎么防范拿到代码先看依赖凡是不认识的第三方库直接让 AI 解释它是干什么用的解释不清楚就让它用标准库替代。这个习惯能帮你避开许多莫名其妙的坑。不过速查表只是对症下药真正预防问题靠流程一次只改一个点、改完立即测试、测完立刻提交。这三个动作叠加比任何花哨技巧都重要。5.2 怎么读懂 AI 给出的报错信息遇到报错普通人最容易犯的第一个错误是只把报错内容发过去不带任何操作上下文。比如复制一句Uncaught TypeError: Cannot read properties of nullAI 只能猜是哪个对象为空。但如果你补一句我在点击保存按钮时出现这个报错它马上就能锁定按钮事件里的问题。我建议遇到报错时按这个固定流程来复制完整的报错信息注意找第一条错误不要贴一堆堆叠的末尾用一句话描述操作现场我打开了什么页面、点了哪个按钮、输入了什么内容说明期望结果我希望保存后列表新增一条记录而不是白屏把这三样一起发给 AI必要时附上相关代码片段。还有一个被严重低估的基础动作学会打开浏览器开发者工具。对于一个纯前端的 HTML/JavaScript 项目来说绝大部分报错都会出现在浏览器控制台里。按 F12 打开开发者工具切到 Console 标签页复制里面红色的错误信息。这个动作看起来非常基础但很多完全没接触过开发者工具的人是真心不知道。我每次课都会花十分钟专门演示一遍因为这就是普通人玩 Vibe Coding 最容易卡住的地方迈过去后面就顺畅了。6. 进阶从能跑到能用、敢上线的最后一公里6.1 代码审查普通人怎么给 AI 写的代码做体检不少人到了能跑阶段就满足了但如果你想把小工具分享给别人用甚至部署上线就必须学会审查。普通人不需要像资深工程师那样逐行读代码但可以借助 AI 做三层体检。第一层逻辑体检。把代码交给 AI让它用大白话解释每一步在做什么。如果它在某个环节解释得支支吾吾说明那段逻辑可能绕了弯或者干脆是错的继续追问。第二层自我纠错体检。直接问 AI请检查这段代码有没有 bug尤其是空值、越界、重复执行这几个方面。让它在交付之前先自查一轮。第三层边界体检。人为制造刁钻输入专门测试那些正常使用不会发生的情况。我给你一个真实片段。之前有位学员用 AI 做了一个学习资料分类小网页让 AI 自查之后以为没问题。但有一天他在标题为空的状态下点了上传页面直接崩溃。后来我们把空标题上传这条边界测试加入验收清单AI 修复之后整个页面才能真正放心给别人用。这件事也让我更加确信能跑不等于能用能用不等于敢上线每一级都需要专门检验。给项目建一份简单验收清单每次改动后手动勾一遍新增功能是否正常原有功能是否受影响数据保存是否可靠页面加载是否变慢答案都合格再进入下一步。6.2 安全底线与数据隐私Vibe Coding 的红线把大量代码任务交给 AI 本身是存在风险的这一点越早意识到越好。我这里列四条红线所有实战课学员我都会反复强调。第一条敏感信息不要进入对话。账号、密码、密钥、身份证号、内部系统地址这类信息绝对不要直接贴进 AI 对话框。多数 AI 服务会通过对话数据进行模型改进和质量审计你无法保证这段话只被你一个人看到。需要配置密匙时学一下环境变量怎么用或者直接问 AI如何安全配置密钥而不写死在代码里。第二条AI 生成的代码不等于安全代码。它默认不会主动帮你做输入校验、权限隔离、注入防护。只要你的程序要接收用户输入就要让 AI 补上校验逻辑或者明确让它按行业安全最佳实践去实现。第三条不直接连生产环境。练习阶段尽量用本地数据和模拟数据不要让 AI 生成的代码直接连接正式环境里的真实数据库。一旦发生误操作数据恢复是巨大的工程真没必要赌。第四条生成内容有来源风险。AI 生成的代码里可能包含它从训练数据中记下来的他人代码片段这在复杂项目里会有许可证层面的麻烦。做商业项目时最好理解一下代码来源或者只把生成内容当原型参考上线前找专业的人过一遍。可以这么说你可以信任 AI 替你完成大部分代码但涉及用户数据安全和上线决策最终把关人只能是你自己。这条红线我希望你越早划清楚越好。把这套思路用到今天我自己最深的感受是Vibe Coding 并没有让编程变得毫不费力而是让编程从必须先把所有基础学完才能动手变成了可以边做边学。我带过的学员里有人用它做出了社团报名系统有人给家里的宠物做了寻回页面还有人只是把每天重复的表格汇总自动化了省下了大量时间。他们的共同点不是天赋高而是愿意拆解需求、愿意多看一行报错、愿意在新对话开始前把背景说清楚。最后分享一个我养成的习惯每次完成一个小功能我会把 AI 对话里的关键描述和当时的决策整理成一小段说明放到项目目录的说明文件里。下次重建对话时把这段说明丢给 AI它能立刻进入状态不用再从头了解项目。这个习惯帮我省下来的时间可能比我掌握的技巧加起来还要多。你也试试大概率会省下不少弯路。
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →