Vibe Coding 是什么?

2025 年初,Andrej Karpathy(前 OpenAI、Tesla AI 负责人)在 X 上创造了"Vibe Coding"这个词,用来描述一种全新的编程方式:完全用自然语言描述你想要的东西,让 AI(Cursor、Claude、GPT-4o)来写代码,而你自己不需要深入理解代码的实现细节,只需要感受(vibe)到它是否符合预期,然后继续迭代。

这个概念一经提出就在设计和开发两个社区同时引爆讨论——因为它打破了一个长达 30 年的边界:设计师需要依赖工程师才能实现想法,工程师需要依赖设计师才能知道界面应该长什么样。Vibe Coding 让这两个角色的执行鸿沟,在理论上可以被任何一方独立跨越。

USER PROMPT →
帮我做一个 SaaS 产品的定价卡片组件,三种套餐,中间的是推荐套餐有高亮边框,悬停时有向上浮动的效果,配色用我的设计系统中的 color.brand.primary token,用 Tailwind CSS
AI OUTPUT (v0 by Vercel) →
export function PricingCards() {
  return (
    <div className="grid grid-cols-3 gap-6">
      // Starter plan
      <PricingCard plan="Starter" />
      // Pro plan (featured)
      <PricingCard plan="Pro" featured />
      <PricingCard plan="Enterprise" />
    </div>
  )
}
// Generated in 8 seconds ✓

Vibe Coding 改变了哪些游戏规则

"我有个想法,但需要等工程师排期实现"
30 分钟内自己 Vibe Code 出可演示的原型
设计评审靠静态截图或 Figma 原型
用真实运行的代码原型做利益相关者对齐
设计师提交设计稿,工程师解读并实现
设计师 Vibe Code 出基础框架,工程师优化和集成
"这个交互效果太复杂,技术上做不了"
设计师直接验证技术可行性,拿数据说话
A/B 测试需要工程排期 + 设计评审 2 周
设计师自主生成变体,1 天内上线测试

"The designer who can speak both the language of users and the language of machines will be the most powerful person in any product team."

— Figma CEO Dylan Field, Config 2024 Keynote

Vibe Coding 时代的设计师技能矩阵

必须掌握
Prompt 工程能力
用精确的语言描述 UI 的交互逻辑、视觉规格、边缘 case,让 AI 一次生成符合预期的代码
必须掌握
代码视觉审核力
能看懂 AI 生成的 React/HTML 代码,判断它在不同屏幕尺寸、不同数据状态下是否符合设计意图
必须掌握
组件化思维
理解什么是组件、prop、state——不是为了写代码,而是为了用正确的语言和 AI、工程师沟通
建议掌握
基础 CSS 能力
能读懂 Tailwind 类名,能修改 AI 生成代码中的简单样式问题,而不是每次都重新 prompt
建议掌握
Cursor / v0 工作流
能熟练使用主流 Vibe Coding 工具,建立从 Figma 到代码原型的标准化工作流程
加分项
前端框架常识
了解 React 组件生命周期的基本概念,能判断 AI 生成的组件架构是否合理(即使不会自己写)

Vibe Coding 的真实风险

01
无障碍性盲区

AI 生成的代码往往在视觉上正确,但缺少 ARIA label、键盘导航支持、正确的语义 HTML。这类问题在浏览器预览中完全看不出来,却会让 5-10% 的用户(使用辅助技术的群体)无法使用你的产品。Vibe Coder 必须把无障碍检查列为标准步骤。

02
性能问题被掩盖

AI 生成的组件可能在小数据量下表现完美,但在真实生产数据(1000 条列表项、大型图片)下严重卡顿。设计师 Vibe Code 出的原型通常不包含性能测试,这可能给工程师留下错误的技术预期。

03
设计意图丢失

Prompt 写得不精确,AI 会做出"看起来合理"但不符合设计意图的决定——比如错误的信息层级、不符合品牌调性的间距系统。Vibe Coder 的核心技能之一就是如何写出让 AI 精确理解设计意图的 Prompt。

04
技术债务被跳过

Vibe Coded 的代码可能结构混乱、命名随意、缺乏可维护性。当这些原型代码被直接进入生产(这种情况在初创公司极为常见),未来的每次迭代都会付出更高的代价。

我自己的 Vibe Coding 实践

过去一年,我已经把 Cursor 和 v0 深度集成进了自己的日常工作流。我的方式是:Figma 负责视觉决策,v0 负责快速出可运行版本,Cursor 负责迭代调整

最直接的收益体现在利益相关者沟通上。以前,设计评审里总有人说"我需要看到真实的交互效果才能判断"——现在我可以在 Figma 评审结束后当场打开浏览器,演示一个用 v0 生成的、真正可以交互的原型。这个改变让设计对齐的效率提升了至少 30%。

但我也踩过坑:早期我把 Vibe Coded 的定价页面组件直接发给工程师参考,结果他们花了额外的时间重构 AI 生成的混乱代码结构。现在我会在 Prompt 中明确要求 AI 遵循特定的组件架构规范,并在交付前自己做一遍无障碍检查。

Vibe Coding 最终不会替代任何角色,它只是抹平了"有想法但无法执行"和"有能力但缺乏洞察"之间的鸿沟。最终决定设计质量的,依然是那个在 Prompt 背后真正理解用户需求的人。

值得现在就开始用的 Vibe Coding 工具

v0 by Vercel
最适合 UI 组件生成,输出 Tailwind + shadcn/ui,质量稳定
Cursor
代码编辑器级别的 AI 协作,适合迭代和调整
🔩
Bolt.new
全栈应用快速原型,一句话生成完整应用
🎨
Framer
设计师最友好的 Vibe Coding 环境,无需懂代码
← 设计系统进化论 2025 · senya 设计思考 返回心得文章 →