前言

自从大语言模型出世后基本上学习和写程序基本都有AI写代码的参与,近日冲浪时发现有人对这种编程方式下了一个定义,所以写篇博文学习一下,试试会不会有所启发

Vibe Coding 定义

Vibe Coding(氛围编码) 是一种以自然语言为驱动、AI 为核心的编程新范式。

理念由 OpenAI 联合创始人 Andrej Karpathy于2025年2月提出,主张“忘记代码的存在,专注于想法的实现”。

简单点说就是人类通过自然语言对话让AI来实现需求

📱 Andrej Karpathy 推文分享

Andrej Karpathy @karpathy
Feb 3, 2025 · 7:17 AM

There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.

It's possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper so I barely even touch the keyboard. I ask for the dumbest things like "decrease the padding on the sidebar by half" because I'm too lazy to find it. I "Accept All" always, I don't read the diffs anymore. When I get error messages I just copy paste them in with no comment, usually that fixes it. The code grows beyond my usual comprehension, I'd have to really read through it for a while. Sometimes the LLMs can't fix a bug so I just work around it or ask for random changes until it goes away. It's not too bad for throwaway weekend projects, but still quite amusing. I'm building a project or webapp, but it's not really coding - I just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works.

🔁 5.6K ❤️ 31K 📈 5.6M Views

Vibe Coding适合场景

  1. 快速原型开发:新产品概念验证,快速验证市场需求
  2. 创意探索:音乐、艺术、数据可视化等创意领域,鼓励即兴创作和探索性编程
  3. 非技术人员开发:产品经理、运营团队、分析师等无需专业编程技能即可创建工具
  4. 前端开发:UI 组件创建、交互效果实现,快速迭代界面设计
  5. 自动化脚本:日常工作流程自动化、简单工具开发,提高工作效率

Vibe 不适用场景

  1. 关键系统:金融、医疗、航空等对安全性、可靠性要求极高的核心系统,需严格审查每一行代码
  2. 高性能应用:对执行速度、内存占用有严格要求的系统,AI 生成代码通常未做深度性能优化
  3. 高度定制化功能:需要独特算法或复杂业务逻辑的场景,AI 可能难以完全理解并正确实现
  4. 长期维护项目:大型、长期维护的项目需要清晰的架构设计和文档,纯 vibe coding 可能导致代码质量问题和维护困难

Vibe Coding平台/IDE

从最开始的复制代码&&报错内容到chatGPT,繁琐的粘贴回项目,再到出现了cursor直接能够主动调用CMD进行文件创建,代码修改,到现在各种Agent能够自动执行高复杂度的内容,AI编程平台已经成为各大厂商竞争的主战场。

这里仅分享两个自己用过的IDE

Trae

字节跳动,国内免费,不可支持自定义模型

我用的最多也是最早的IDE,便宜大碗,最近出了SOLO模式还不错,国内使用很方便,执行部分复杂事件时会抽风

Antigravity

谷歌开发的AI编程平台,支持Gemini,claude,需要魔法

近期刚转来的IDE,缺点是需要魔法上网,但是Gemini3pro确实要强上不少,在写前段时还会直接用Nano Banana来帮你创建图标(其实有点没必要),有额度限制。

Vibe Coding能够取代传统程序员吗?

在目前的发展阶段,虽说部分Agent已经可以纯靠自然语言实现一个系统,或者一个项目,但是Coding在目前阶段依旧是Vibe Coding的入场卷,即使你有一个万能的工具,你无法做出认知之外的事情。同时在Vibe Coding的评价体系内,程序员所需的素质也在改变,如何与AI相处发挥出它最大的能力,将成为程序员们要思考的问题。

Vibe Coding与学习感悟

作为计算机专业的学生,自从大一下ChatGPT大范围传播开始,无论是课程作业还是项目制作都已经全面使用AI来实现了,在此写下几点感悟,即用于分享,也用于警示自己

区分使用AI学习和制作

学习:当我们使用AI进行学习的时候,要认清AI取代的是技术文档不是程序员,推荐使用AI来为你想了解的语句,语法,接口提供例子。推荐学习的时候写帖发笔记,一方面手写出来的内容可以帮助内化知识,一方面也可以进行留档,便于后续自己参考

制作:使用AI进行项目实现的时候,一定要为通用部分,框架进行限制,避免采用同一个项目采用多种方式来实现同一功能,这样后续无论是硬着头皮写下去还是重构都是令人烦恼的

提示词工程

采用Vibe Coding来实现项目,提示词就是你与AI与项目沟通的唯一渠道,一个表述清晰,优秀的提示词是提升效率的最快途径(当然我也在学习中),详情见另一篇帖子(:D)