YC大佬分享的 10 个 vibe coding技巧,看完收获巨大

news/2025/9/22 12:53:51/文章来源:https://www.cnblogs.com/hepingfly/p/19104954

1、当 AI 卡住的时候切换战场。

问题:

当你在使用 cursor claude code 这样的 AI 编程工具,在编程的时候,如果遇到 AI 无法实现某个功能或者无法修复某一个错误,并且反复尝试都失败(陷入逻辑死循环)

技巧:

这时候就不要在工具里面死磕了,直接复制你的代码和问题,打开大语言模型的官方网页版(比如 ChatGPT),把代码和问题直接粘贴进去,再问一遍同样的问题。

通常 Web 界面能够提供在集成工具中得不到的、更具有创造性的解决方案。【gzh:和平本记】

2、并行使用多种AI工具

问题:

不同的 AI 模型各有优劣,有的速度快,有的思考的深入,有的前端界面做的好看。

技巧:

1)利用不同工具的特性

那你可以在同一个项目上同时启动多种 AI 编程工具。利用不同工具的特性来提供效率。

比如说你现在有 ABC 三个功能。当你完成 A 功能的开发,准备 B 功能开发的时候,我们知道 claude code 非常擅长开发前端 UI 界面,Codex 擅长 review 代码。

那此时你就可以让 claude code 去开发 B 功能的前端界面,同时让 Codex 去 review 刚开发完的 A 功能的代码。

2)提高时间利用率

当 claude code 在开发大功能模块的时候,为了避免等待,你就可以使用 cursor 或者 augment 去小修小补。

3)生成不同方案进行比较

这种就更绝了,针对同一个需求,让不同的 AI 编程工具分别去实现,最后看哪个工具实现的好,就留哪一个版本。

怎么做?

比如我们现在想对比一下,针对同一个需求,claude code 和 Codex 哪一个实现方案更好?

1️⃣ 创建分支

从主开发分支(如 develop)上,创建两个新的实验分支,例如 feature/login-codexfeature/login-claude

2️⃣ 在不同的分支上工作【gzh:和平本记】

feature/login-codex分支上,让AI工具 Codex 来完成整个登录功能的开发,并提交代码。

然后切换到 feature/login-claude 分支,让 AI工具 Claude Code 用不同的方式实现同样的功能,并提交。

3️⃣ 完全隔离比较

现在,这两个实现版本被完全隔离在不同的分支里。开发者可以随时切换分支,完整地运行和测试这两个方案,进行深入比较。

4️⃣ 合并最优解

当决定哪个版本更好后,可以将那个分支(比如 feature/login-codex)合并回主开发分支,然后将另一个实验分支 (feature/login-claude) 删除。

3、采用测试驱动的编程方法

问题:

AI 在写代码的时候,最大的一个问题就是他可能会随意发挥,给出来的结果很有可能不是你想要的,或者跟你预期的有差距。

技巧:

我们采用测试先行,先定义好成功的标准,再让 AI 去实现。

首先,编写详细的测试用例(Test Cases)。一旦高质量的测试用例准备就绪,就相当于为AI设定了强有力的规则或护栏 。

AI可以在这些明确的约束下自由地生成代码,其目标就是通过这些预设的测试。

当 AI 生成的代码能够让所有测试用例显示为绿色(即全部通过)时,开发工作就完成了。

4、与 AI 协作先制定详细的计划

如果你之前写过代码,或者对代码稍微有点了解,那你可以直接从cursor、 claude code 上手。

当你选好编程工具之后,第一步不是立刻开始写代码,而是和大语言模型一起先制定一个全面的计划,然后把它保存成 MD 文件,放到项目的文档目录下面,这样你可以随时回过头来参考。

要产出这份文档,需要你自己先整理一份结构化讨论框架,通过这份结构化讨论框架,你可以跟 AI 去进行讨论,把产品从想法到落地,这中间的过程落到一份文档中,然后按照这份文档去进行实施。

解释一下这里的结构化讨论框架:

因为你想要做一个产品,一开始可能只有一个模糊的想法,那你不可能跟 AI 东一句西一句的讨论,这样最后只能得到漫无目的的碎片。

你需要遵循一定的框架,一步一步循序渐进的跟 AI 讨论。逐渐把一个想法落地成一个产品。

比如说你需要先和 AI 讨论

  • 项目的核心价值,目标用户、商业模式。
  • 然后讨论项目的应用架构,比如 API 接口怎么设计?数据库怎么设计?
  • 再然后跟 AI 讨论用户界面和 UI 设计
  • 最后再讨论一些执行过程中的细节

把以上所有的讨论都整理到一份 MD 文件中,当你完成这份初稿之后,自己认真的在从头到尾看一遍,把那些你认为不需要或者不喜欢的内容给它删掉,比如针对一些特别复杂的内容,我们起步阶段就可以放弃开发。

以上的过程你和 AI 讨论的越细,你对产品的掌控感就越强,最后我们执行的时候也是参考这份 MD 文件去执行。

不少人使用 AI 编程的时候,会先让 AI 生成一个需求文档,然后直接就让 AI 根据这份需求文档去生成代码。这种方式也可以,但是对项目整体的掌控感就会相对来说弱一点。因为 AI 针对需求去开发,那 AI 具体怎么去实现,对你来说相当于是黑盒。

5、使用版本控制

很多的 AI 编程工具都有回退功能,但是最专业、最好用的还是 Git。

每次开始开发一个新功能的时候,都要确保从一个稳定的、干净的 Git 版本开始,这样,万一 AI 突然发疯,你可以直接恢复到上一个稳定版本。

有的时候你开发一个新功能或者修复一个 bug,你需要跟 AI 来回拉扯四五轮,最终才能把这个问题搞定。【gzh:和平本记】

那在这个过程中 AI 其实会产生非常多冗余的代码,最好的办法是先搞清楚解决方案是怎么样的,然后把代码回退到上一个版本,最后把解决方案应用到这个稳定版本上,这样你的项目就会少非常多的垃圾代码。

6、编写测试

你可以直接让 AI 帮你写测试,AI 在这方面很擅长,但是他们大部分生成的都是单元测试。

但是更推荐让 AI 去编写高层级的测试。

什么是高层级的测试?举个例子:

1)模拟用户真实行为

模拟一个真实用户如何与你的网站或者应用交互。比如测试一个用户从注册登录到浏览商品,最终下单支付的整个过程。而不是单独测试去验证邮箱是否正确这样的一个单元测试

2)端到端的功能验证

确保整个功能链条从头到尾是畅通的,能从头到尾正常工作。这种测试不关心内部某个函数的具体实现细节,只关心整体功能是否到达预期效果。

3)捕捉意外副作用

AI 在修改代码的时候,常常会无缘无故的修改其他毫不相关逻辑的代码。

如果只有单元测试,你可能无法发现这种跨模块的、意料之外的错误。而高层级的集成测试,因为它测试的是完整的用户流程,所以当 AI 无意中破坏系统中某个功能的时候,这个测试就会运行失败,能帮你提早发现问题。

7、处理非编码任务

AI 编程工具除了可以写代码之外,你还可以用它来处理一些非编码任务。

比如已经有人用 claude code 去发 Twitter 发小红书。AI 在这方面也很强,不要忘记他在这方面的功能。

8、bug 修复

对于一些比较复杂的 bug,可以让大模型先列出3~4种修复方案或者 bug 引起的原因。然后再让他写代码去修复。【gzh:和平本记】

当你遇到一个 bug,修复多次都没有能修复成功的时候。失败一次你就把代码回退一次,然后重新尝试修复。这样你的项目不会积累一层又一层的垃圾代码。

9、关于文档

如果你在开发过程中需要让 AI 参考一些文档,虽然可以通过一些 MCP 工具去访问在线文档,但是如果你发现 AI 理解不准确的时候,可以把在线文档下载下来,直接放到项目的文档目录,本地化的文档更容易让 AI 去理解。

10、关于复杂功能

如果你开发一个新功能,但是这个功能实现起来非常的复杂。你可以把它作为一个独立的项目,在完全干净的代码库中进行开发,等开发好了之后,再让 AI 参考你开发的这个代码,去完成你需要的功能。

有的时候 GitHub 上会有已经写好的功能代码,我们可以直接拿过来用,然后我们在一个完全干净的代码库中把要开发的功能开发好了之后,再让原项目参考我们刚刚开发好的代码,完成最终功能的实现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/909331.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ES集群部署-EFK架构实战 - 实践

ES集群部署-EFK架构实战 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&quo…

《BOE解忧实验室》第四季圆满收官 以科技重塑文化生活新范式

9月10日,由 BOE(京东方)自制的技术科普综艺节目《BOE解忧实验室》第四季迎来收官,全平台累计曝光量突破4.79亿,成为科技企业破圈营销行业示范标杆。作为中国科技企业首档技术科普综艺,本季节目以“中国地标+科技…

洛谷P2261 [CQOI2007] 余数求和

原题 题目描述 给出正整数\(n\)和\(k\), 请计算 \[G(n, k) = \sum_{i=1}^{n} k \bmod i \]其中\(k \bmod i\)表示k除以i的余数。 输入格式 输入只有一行两个整数,分别表示\(n\)和\(k\)。 输出格式 输出一行一个整数表…

负载排查和优化

负载排查和优化 Linux 网络优化与性能分析完全指南1️⃣ 中断与软中断基础 1.1 中断(IRQ)概念定义:CPU 在执行任务时,外设或内核事件请求 CPU 立即响应。作用:及时处理外设请求和系统事件,保证系统响应及时、稳定…

挑战骑行距离新记录:46公里

挑战骑行距离新记录:46公里周末要去江浦一趟,之前都是坐地铁转公交,这次突发奇想,干脆骑车去,反正时间比较充裕,于是早上8点半左右从住处出发,到中午11点53分到达,全长46公里左右(中间还走错一段路),用时3小…

arc206 总结

arc206 总结 这次前面切得比较快,然而 D 题漏了情况卡到最后也没过。E 题也属于中等难度的题。 A 枚举题目中的 \(L\),一个连续段只能有一个 \(L\),对答案的贡献为其后面不等于 \(a_L\) 的个数。 复杂度 \(O(n)\)。…

科研必读|提升酿酒酵母表达蛋白产量的关键技术

科研必读|提升酿酒酵母表达蛋白产量的关键技术酿酒酵母作为真核蛋白表达的经典宿主,其具有蛋白折叠、分泌途径、翻译后修饰(如糖基化、二硫键结合等)的能力,是许多科研与工业蛋白生产的首选平台。但实践中常遇到表…

【RK3576】【Android14】如何在Android14下单独编译kernel-6.1? - 详解

【RK3576】【Android14】如何在Android14下单独编译kernel-6.1? - 详解2025-09-22 12:41 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: au…

完整教程:栈与队列的实现方式与应用解惑

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

完整教程:uniapp、devceo华为鸿蒙运行模拟器报错:未开启Hyper-V

完整教程:uniapp、devceo华为鸿蒙运行模拟器报错:未开启Hyper-Vpre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "…

深入解析:08_多层感知机

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

9.8C++作业 - 实践

9.8C++作业 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Co…

(一)React面试(虚拟DOM/类组件) - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

浏览器访问页面卡顿刷新页面方法

浏览器访问页面卡顿刷新页面方法浏览器访问页面卡顿刷新页面方法 同一个网址在一个浏览器中开了多个tab页窗口,会出现卡顿等转圈圈的现象 扩展浏览器缓存空间通过修改启动参数增加缓存容量: "C:\Program Files …

完整教程:散斑深度相机原理

完整教程:散斑深度相机原理pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco",…

k8s Understanding Kubernetes Security Components

Understanding Kubernetes Security Components In Kubernetes, security is implemented through several components that work together to control access and permissions. Lets explore ServiceAccounts, Roles,…

如何用 Dify 无代码工作流实现 AI 自动化抓取与分析 LinkedIn 招聘数据

如何用 Dify 无代码工作流实现 AI 自动化抓取与分析 LinkedIn 招聘数据在本指南中,您将学习到以下内容:Dify 是什么? 为什么要将它与一体化搜索插件整合? 将 Dify 与 Bright Data 插件集成的优势 创建 Dify 搜索工…

2025/9/22

2025/9/22学习统一建模语言 学习数据结构,链表

WSL+共享文件夹搭建zephyr工作环境

之前使用window是编译,但是发现编译真的太慢了,所以还是尝试安装ubuntu来开发: 我这里有一个搭建好的,可以直接wsl安装,但是不支持完整的SDK工具,只支持esp32和arm sdk版本是 0.17.4,只安装了(arm,esp32, es…

如果 Spring Cloud Feign 配置了 OkHttp3 非阻塞 IO(NIO),那么还需要reactor 模型来提高性能吗

目录先明确核心区别:OkHttp3与Reactor模型的定位为什么可能还需要Reactor模型?何时需要引入Reactor?何时可以不引入Reactor?总结 如果 Spring Cloud Feign 配置了 OkHttp3 非阻塞 IO(NIO),那么还需要reactor 模…