部署DeepSeek模型,进群交流最in玩法!
立即加群
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >氛围式编程什么鬼!?

氛围式编程什么鬼!?

作者头像
腾讯云开发者
发布于 2025-04-23 01:33:10
发布于 2025-04-23 01:33:10
20500
代码可运行
举报
运行总次数:0
代码可运行

Vibe Coding(氛围式编程)是一种革命性的软件开发方法,由AI专家Andrej Karpathy在2025年初提出并推广。这种方法让开发者利用大型语言模型(LLMs)通过自然语言描述来生成代码,从而改变了程序员的角色——从手动编写代码转变为引导和优化AI生成的解决方案。

关注腾讯云开发者,一手技术干货提前解锁👇

01、概念介绍

不知道大家最近有没有听说过Vibe Coding(氛围式编程),这是AI大神Andrej Karpathy在2025年初提出的一种超酷的编程方式。简单来说,就是让我们不再一行行敲代码,而是用日常语言告诉AI你想做什么,然后它帮你把代码写出来。程序员的角色从手动编写代码转变为引导和优化AI生成的解决方案。

正如Karpathy幽默地指出:“Vibe Coding的目标是让开发者能够专注于解决问题的逻辑和创意,而不是繁琐的代码编写。通过利用大型语言模型,我们可以生成高质量的代码,节省开发时间,提高开发效率。”

02、Vibe Coding 的核心理念

Vibe Coding 的核心理念是通过自然语言描述来生成代码,这样开发者可以专注于解决问题的逻辑和创意,而不是繁琐的代码编写。这种方法可以提高开发效率,降低门槛,增强创造力。

03、Vibe Coding 的工作原理

Vibe Coding 的工作原理基于大型语言模型(LLMs)的能力,这些模型可以通过自然语言描述来生成代码。开发者只需要提供一个清晰的自然语言描述,LLMs 就可以生成相应的代码。这种方法可以节省开发时间,提高开发效率。

具体来说,Vibe Coding 的工作流程如下:

  1. 需求分析:开发者首先需要分析需求,确定需要解决的问题和目标。
  2. 自然语言描述:开发者使用自然语言描述需求和目标,生成一个清晰的文本描述。
  3. LLMs 生成代码:LLMs 接收文本描述,并生成相应的代码。
  4. 代码优化:开发者可以优化生成的代码,确保它满足需求和目标。
  5. 测试和部署:开发者可以测试和部署生成的代码,确保它正常工作。

04、Vibe Coding 的优势

Vibe Coding 的出现带来了多个显著的优势,包括:

  • 提高开发效率:通过利用大型语言模型,开发者可以快速生成代码,节省手动编写代码的时间。
  • 降低门槛:Vibe Coding 使得没有丰富编程经验的人也可以参与软件开发,通过自然语言描述来生成代码。
  • 增强创造力:Vibe Coding 允许开发者专注于解决问题的逻辑和创意,而不是繁琐的代码编写。

05、Vibe Coding 的工具

目前,已经有多个 Vibe Coding 工具被开发和推广,包括:

Cursor

Cursor是一个基于Visual Studio Code的AI驱动代码编辑器。它将AI直接集成到编码环境中,提供了一个侧边栏聊天(称为Composer),你可以通过它指导AI编写或编辑代码。

Cursor有两种模式:普通模式和高级模式。在普通模式下,Cursor可以帮助你完成代码,提供智能提示和自动完成。在高级模式下,Cursor可以帮助你生成高质量的代码,提供更详细的提示和建议。

Windsurf

Windsurf是世界上第一个基于代理技术的IDE,专为Vibe Coding设计。它采用了革命性的AI Flow范式,使AI能够独立工作或与用户协作。Windsurf内置了强大的Cascade AI助手,可以理解用户的自然语言指令,并将其转化为高质量的代码。

Windsurf的特点包括:

  • 代理式编程:AI可以作为独立代理执行复杂任务,如创建完整项目、调试代码或优化性能
  • 自然语言交互:用户可以用自然语言描述需求,AI会理解并生成相应代码
  • 上下文感知:AI能够理解整个项目的上下文,提供更准确的代码建议
  • 多模态输入:支持文本、语音等多种输入方式,增强交互体验

Windsurf特别适合那些希望利用AI提高编程效率,同时保持对代码质量控制的开发者。

GitHub Copilot

GitHub Copilot是一个基于AI的代码生成工具,可以帮助开发者生成代码。它支持多种编程语言,包括PythonJava、C++等。 GitHub Copilot可以帮助开发者快速生成代码,节省手动编写代码的时间。它可以根据开发者的输入,生成高质量的代码,提供智能提示和自动完成。

Kite

Kite是一个基于AI的代码完成工具,可以帮助开发者完成代码。它支持多种编程语言,包括Python、Java、C++等。 Kite可以帮助开发者快速完成代码,节省手动编写代码的时间。它可以根据开发者的输入,生成高质量的代码,提供智能提示和自动完成。

Tabnine

Tabnine是一个基于AI的代码生成工具,可以帮助开发者生成代码。它支持多种编程语言,包括Python、Java、C++等。 Tabnine可以帮助开发者快速生成代码,节省手动编写代码的时间。它可以根据开发者的输入,生成高质量的代码,提供智能提示和自动完成。

DeepCode

DeepCode是一个基于AI的代码审查工具,可以帮助开发者审查代码。它支持多种编程语言,包括Python、Java、C++等。 DeepCode可以帮助开发者快速审查代码,节省手动审查代码的时间。它可以根据开发者的输入,生成高质量的代码,提供智能提示和自动完成。

CodeBuddy (腾讯云代码助手)

CodeBuddy 是腾讯推出的 AI 编程辅助工具。它以插件形式AI直接集成到 IDE编码环境中,提供侧边栏聊天(称为 Craft Agent 模式 & Chat AI 问答 ),你可以在 Craft Agent 中发送自然语言指令,AI 深度理解需求,自主完成多文件代码编写与修改,自动生成可执行的应用。

CodeBuddy Craft 有两种模式:普通模式和Plan 模式。在普通模式下,CodeBuddy 可以自动帮助你写完代码,提供友好的智能提示和自动终端执行完成。在Plan 高级模式下,CodeBuddy 可以进行咨询确认式的方式,帮助你生成高质量的代码,提供更详细的提示和建议。

此外,CodeBuddy 在 3.1 发布的版本中,成为国内首家支持MCP的代码助手,兼容数十种 MCP Server ,更提供如 TAPD、CNB 等具有腾讯生态的 MCP Server;同时增强多项功能,如工程理解Codebase、代码补全 、单元测试、代码评审多个智能体能力升级,适配 DeepSeek V3最新模型。从智能理解工程、实时续写代码,到单测覆盖一步到位,全面为开发者提供精准的代码建议和解决方案,打造极致的开发体验。

👉这里也为腾讯自家产品打个广告,即刻免费体验,安装指引:https://copilot.tencent.com

06、Vibe Coding 的应用场景

Vibe Coding 的应用场景非常广泛,包括:

  • 快速原型开发通过Vibe Coding,可以快速生成原型代码,验证产品的可行性和用户需求。
  • 自动化测试:Vibe Coding可以用于生成自动化测试代码,提高测试效率和覆盖率。
  • 代码重构:Vibe Coding可以帮助开发者重构遗留代码,提高代码质量和可维护性。

07、Vibe Coding 的实例代码

下面是一个使用Vibe Coding的简单示例:

假设你想要创建一个简单的天气应用,你可以使用自然语言描述来生成代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
创建一个简单的天气应用,可以显示用户输入城市的当前天气。使用HTMLCSS和JavaScript实现。

AI可能会生成类似于以下的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>简单天气应用</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            max-width: 600px;
            margin: 0 auto;
            padding: 20px;
            text-align: center;
        }
        .weather-container {
            margin-top: 20px;
            padding: 20px;
            border-radius: 10px;
            background-color: #f0f8ff;
            box-shadow: 0 0 10px rgba(0,0,0,0.1);
        }
        input, button {
            padding: 8px 12px;
            margin: 10px 0;
        }
        button {
            background-color: #4CAF50;
            color: white;
            border: none;
            cursor: pointer;
        }
        button:hover {
            background-color: #45a049;
        }
    </style>
</head>
<body>
    <h1>简单天气应用</h1>
    <div>
        <input type="text" id="cityInput" placeholder="输入城市名称">
        <button onclick="getWeather()">查询天气</button>
    </div>
    <div id="weatherResult" class="weather-container" style="display: none;">
        <h2 id="cityName"></h2>
        <p id="temperature"></p>
        <p id="description"></p>
    </div>
    <script>
        function getWeather() {
            const city = document.getElementById('cityInput').value;
            if (!city) {
                alert('请输入城市名称');
                return;
            }
            
            // 这里使用的是模拟数据,实际应用中应该使用天气API
            // 例如: fetch(`https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=YOUR_API_KEY&units=metric`)
            
            setTimeout(() => {
                // 模拟天气数据
                const weatherData = {
                    name: city,
                    main: { temp: Math.floor(Math.random() * 30) },
                    weather: [{ description: ['晴朗', '多云', '小雨', '大雨'][Math.floor(Math.random() * 4)] }]
                };
                
                displayWeather(weatherData);
            }, 500);
        }
        
        function displayWeather(data) {
            document.getElementById('cityName').textContent = data.name;
            document.getElementById('temperature').textContent = `温度: ${data.main.temp}\u00b0C`;
            document.getElementById('description').textContent = `天气状况: ${data.weather[0].description}`;
            document.getElementById('weatherResult').style.display = 'block';
        }
    </script>
</body>
</html>

这个示例展示了Vibe Coding的强大功能——只需要一句简单的自然语言描述,就能生成一个完整的天气应用。

08、Vibe Coding 的最佳实践

为了更好地使用Vibe Coding,以下是一些最佳实践:

理解AI的角色

虽然Vibe Coding利用AI,但了解其能力和局限性很重要:

  • 在实施前审查并理解AI生成的代码。
  • 将AI作为协作工具,而不是编程知识的替代品。
  • 使用AI生成的代码时保持安全最佳实践。
  • 彻底测试,因为AI有时可能生成看似合理但不正确的代码。

有效的提示

成功的Vibe Coding关键在于如何与AI沟通:

  • 在需求中具体明确。
  • 将复杂问题分解为更小、更易管理的部分。
  • 在提示中包含上下文和约束条件。
  • 根据结果迭代和优化提示。

09、Vibe Coding 的实际案例

已经有多个公司和组织开始使用Vibe Coding来提高开发效率和质量,包括:

  • Microsoft:使用Vibe Coding来生成自动化测试代码,提高测试效率和覆盖率。Microsoft的开发团队使用GitHub Copilot生成测试代码,节省了大量的开发时间。
  • Google:使用Vibe Coding来生成原型代码,验证产品的可行性和用户需求。Google的开发团队使用Kite生成原型代码,快速验证产品的可行性。
  • Amazon:使用Vibe Coding来重构遗留代码,提高代码质量和可维护性。Amazon的开发团队使用Tabnine重构遗留代码,提高了代码质量和可维护性。
  • 腾讯:使用 CodeBuddy Craft 进行 Vibe Coding 来自主生成多文件代码与修改,当前 Craft 实测每日生成采纳率 90% 以上;腾讯的开发团队使用 CodeBuddy 的代码补全、Craft、单元测试、 代码智能评审等功能,进行提升编码效率、理解老旧项目、重构遗留代码、发现代码漏洞,直接提升提高了代码质量和可维护性。

还有很多很多人在X上分享过,他们利用Vibe Coding开发的游戏或者应用。

10、Vibe Coding 的未来展望

说实话,Vibe Coding的未来简直让人兴奋!随着那些超级大模型越来越聪明,这种编程方式肯定会越来越普及。想象一下,以后我们可能真的不用再死记硬背那些复杂的语法和API了,只需要用自然语言就能搞定编程,这简直是程序员的福音啊!

11、Vibe Coding 的发展趋势

那么,Vibe Coding接下来会往哪些方向发展呢?我给大家列几个靠谱的预测:

像聊天一样编程

以后写代码可能就像和朋友聊天一样简单。你说“嘿,我想做个天气应用”,AI就帮你生成代码。这种方式不仅提高了开发效率,还让编程变得更加有趣和创造性。

多语言支持

Vibe Coding会支持更多的编程语言,包括Python、Java、C++等。这样,开发者就可以使用他们最熟悉的语言来编程了。

自动化测试

Vibe Coding会支持自动化测试,开发者可以使用Vibe Coding生成自动化测试代码。这种方式可以提高测试效率和覆盖率。

代码重构

Vibe Coding会支持代码重构,开发者可以使用Vibe Coding重构遗留代码。这种方式可以提高代码质量和可维护性。

12、Vibe Coding 的应用前景

说到Vibe Coding能用在哪,这可真是广泛得很!来看看这些领域:

软件开发

这个不用说,软件开发是它的主战场。以后写代码可能就像点菜一样,告诉AI你想要什么功能,它就帮你生成代码。

数据分析

Vibe Coding也可以用在数据分析领域,开发者可以使用Vibe Coding生成数据分析代码,快速获取数据洞察。

机器学习

Vibe Coding还可以用在机器学习领域,开发者可以使用Vibe Coding生成机器学习代码,快速训练模型。

网络安全

Vibe Coding也可以用在网络安全领域,开发者可以使用Vibe Coding生成网络安全代码,快速检测和防御攻击。

13、结论

总的来说,Vibe Coding真的是编程界的一场革命!它让编程变得像聊天一样简单,打破了编程的门槛,让更多人能够参与进来。不管你是资深开发者还是初学者,都能从中受益。我们可能正在见证一个新时代的开始,一个人人都能编程的时代!

-End-

原创作者|龙浩

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-04-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯云开发者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 01、概念介绍
  • 02、Vibe Coding 的核心理念
  • 03、Vibe Coding 的工作原理
  • 04、Vibe Coding 的优势
  • 05、Vibe Coding 的工具
  • 06、Vibe Coding 的应用场景
  • 07、Vibe Coding 的实例代码
  • 08、Vibe Coding 的最佳实践
  • 09、Vibe Coding 的实际案例
  • 10、Vibe Coding 的未来展望
  • 11、Vibe Coding 的发展趋势
  • 12、Vibe Coding 的应用前景
  • 13、结论
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档