金华市网站建设_网站建设公司_支付系统_seo优化
2026/1/7 10:27:29 网站建设 项目流程

在传统的软件开发语境下,当我们想做一个“麻将/扑克计分器”时,脑海中浮现的第一个画面往往是:打开 VS Code,初始化 Git 仓库,纠结是用 Vue 还是 React,配置 Webpack 或 Vite,然后开始一行行敲击代码。

但现在,时代变了。

随着 Cursor、Trae 等 AI 原生编辑器的崛起,一种全新的编程范式——Vibe Coding(氛围编程)正席卷开发者社区。在这个新世界里,我们不再是“码农”,而是“指挥家”。

本文将以开发一个“微信计分小程序”为例,带你深入理解什么是 Vibe Coding,为什么“抽卡式”提问不可取,以及如何通过SDD(规范驱动开发)多 Agent 模式,实现真正的“零代码”构建。

一、 什么是 Vibe Coding?

Vibe Coding,直译为“氛围编程”,是一种基于 AI 强大的代码生成能力而诞生的开发状态。

1.1 从 Coding 到 Vibe

在传统 Coding 模式下,前端工程师的价值往往体现在对语法的熟练度、对框架的理解以及手写代码的速度。也就是“工资来自代码能力”。

而在 Vibe Coding 模式下:

  • 核心工具:Trae、Cursor 等 AI 编辑器。
  • 核心动作:不修改任何一行代码,仅通过 Prompt(提示词)与 AI 交互。
  • 核心流程:调试、调优、把控方向。

你就像一个产品经理兼技术总监,你需要做的是维持某种“Vibe(氛围/心流)”,让 AI 顺着你的思路,像流水一样自动生成产品。

1.2 为什么我们需要 Vibe Coding?

对于一个简单的“计分小程序”需求,如果还要去配置环境、写 CSS、调 Flex 布局,这不仅效率低下,更是对创造力的扼杀。Vibe Coding 允许我们将精力集中在需求分析逻辑设计用户体验上,繁琐的实现细节全部交给 AI。

二、 AI 编程的三个段位:从“抽卡”到“系统化”

很多人尝试用 AI 写代码,结果发现 AI 写的全是 Bug,最后还得自己重写。这通常是因为你还停留在第一阶段。在构建这个计分小程序的过程中,我们清晰地看到了 AI 编程进化的三个阶段。

第一阶段:Prompt 抽卡(Gacha Mode)

这是最原始的阶段。

你打开 Chat 窗口,输入:“帮我做一个微信小程序,用来打麻将计分。”

  • 结果:AI 会扔给你一段代码,可能缺胳膊少腿,逻辑跑不通,甚至 UI 丑出天际。
  • 问题:需求极其模糊。AI 只能“猜”你想要什么。你不满意,于是再生成一次。这就像玩游戏“抽卡”,纯靠运气。
  • 评价:基本不可用,大改特改不如重写,浪费时间。

第二阶段:Prompt Engineering(结构化提示词)

在这个阶段,你开始意识到 Prompt 的重要性。你不再随意说话,而是像一个“提示词工程师”。

你开始这样写:

“你是一个资深前端专家。请使用原生微信小程序开发。项目结构遵循 standard 规范。使用 ES6 语法。请帮我实现一个计分页面,包含增加、减少分数的逻辑…”

  • 特征

    • 赋予角色:给 AI 设定人设。
    • 规范约束:指定技术栈(ES6, TailwindCSS 等)。
    • 上下文:提供部分项目背景。
    • 输出格式:规定代码返回的格式。
  • 结果:相比第一阶段,代码质量显著提升。稍微改改就能用。

  • 局限:依然需要人工深度介入审核和调试,无法处理复杂的系统级逻辑。

第三阶段:Spec-Driven Development (SDD) + Multi-Agent

这是 Vibe Coding 的完全体,也是生产级别的标准做法。

在这个阶段,我们引入了 Multi-Agent(多智能体) 和 SDD(规范驱动开发) 的概念。

我们不再直接让 AI 写代码,而是模拟一个虚拟软件公司

  1. 产品经理 Agent:负责通过多轮对话,确定需求,生成 PRD(产品需求文档)。
  2. 设计师 Agent:根据 PRD 生成 UI 设计描述或代码。
  3. 前端/后端 Agent:根据设计稿和 PRD 进行编码。
  4. 测试 Agent:验证代码是否符合 PRD。

核心理念:先有文档,后有代码。文档即“法律”。

三、 核心方法论:SDD(规范驱动开发)

Spec-Driven Development (SDD)。这是让 AI 从“玩具制造者”变成“工程师”的关键。

3.1 什么是 SDD?

简单来说,就是先把“规则说明书”写清楚,再按说明书写代码。这里的 Spec(Specification)可以是:

  • 产品需求文档 (PRD)
  • 接口定义文档 (API Spec)
  • UI/UX 行为描述
  • 测试用例

3.2 为什么 SDD 对 AI 尤为重要?

人类程序员可以通过口头沟通弥补文档的缺失,但 AI 不行。AI 极其擅长“一本正经地胡说八道”(幻觉)。

  • 如果没有 Spec,AI 会根据概率预测代码,容易跑偏。
  • 有了 Spec,Spec 就是合同,代码是履约结果

举个例子:

如果不写 Spec,直接让 AI 写登录。它可能会自己造一个数据库结构,甚至忽略错误处理。

如果是 SDD 模式,我们会先定义:

# 接口 Spec - 路径: POST /login - 入参: { username, password } - 成功: { code: 0, token: "xxx" } - 失败: { code: 401, message: "Auth Failed" }

AI 拿到这份“合同”,如果写出的代码返回了code: 200,那就是违约(Bug)。这让自动化测试和代码验收变得极其简单。

四、 实战演练:手搓“我要计分”小程序

理论讲完了,我们进入实战。目标是开发一个用于扑克、麻将的微信计分小程序

我们将完全遵循第三阶段(SDD + Multi-Agent)的流程。我们将使用 Gemini 作为我们的“首席产品经理”,Trae/Cursor 作为我们的“开发团队”。

4.1 Step 1: 召唤“大师级产品经理” (Gemini)

我们不直接写代码,先找 Gemini 聊需求。

Prompt 策略:

  1. 赋予高阶身份:大师级微信小程序产品经理。
  2. 确立协作模式:先讨论,确认所有细节后,再生成文档。
  3. 明确输出目标:一份给 AI 编程工具看的 Markdown 需求文档。

用户输入:

你是一个大师级的微信小程序产品经理,我现在需要你帮我把想法变成需求文档,用于给到AI编程工具进行实现。

我们需要先讨论一下需求,等确定了所有的需求,我们在进行第二步。

做一个微信小程序,用于麻将或扑克的计分。

Gemini 的反馈(模拟):

Gemini 不会立刻生成文档,而是会反问关键问题:

  • “计分是只记录总分,还是需要记录每一局的流水?”
  • “需要支持多少人?是固定的4人麻将,还是动态人数的扑克?”
  • “如果不小心记错了,是否支持回退或修改?”
  • “数据是保存在本地缓存,还是需要云端同步?”

这就是 AI 的规划能力。通过几轮对话,我们确定了核心功能:

  • 首页:创建房间/历史记录。
  • 计分页:支持 2-8 人,加减分操作,实时排行榜。
  • 流水页:查看每一局的得分详情,支持撤销。

4.2 Step 2: 生成 Spec(产品需求文档)

讨论结束后,Gemini 会生成一份结构化的 PRD。这份文档将成为后续开发的“圣经”。

PRD 概览 (Markdown):

# 计分小程序产品需求文档 (PRD) ## 1. 项目概述 本小程序旨在为线下麻将、扑克局提供便捷的计分服务,替代纸笔记录。 ## 2. 技术栈约束 - **平台**: 微信小程序 (Native) - **语言**: WXML, WXSS, JavaScript (ES6) - **禁止使用**: UniApp, Vue, TypeScript (保持原生,轻量化) - **数据存储**: wx.setStorage (本地存储,无需后端) ## 3. 功能模块 ### 3.1 首页 - **功能**: 展示“开始新对局”按钮,下方列表展示“历史对局”。 - **交互**: 点击历史对局可进入查看详情。 ### 3.2 玩家设置页 - **功能**: 输入玩家姓名,选择玩家人数 (2-8人)。 - **逻辑**: 校验姓名不能为空。 ### 3.3 计分主页 - **布局**: Grid 布局展示所有玩家当前总分。 - **操作**: 点击玩家头像 -> 弹窗输入本局得分 -> 确认 -> 更新总分。 - **核心逻辑**: - 必须校验本局所有玩家得分之和为 0 (适用于麻将/扑克零和博弈规则,可选配置)。

注意:我们在 Prompt 中明确要求了“不要使用 uniapp, vue, typescript,使用原生的小程序开发”

  • 为什么要原生?对于这种轻量级工具,引入框架只会增加打包体积和调试复杂度。AI 的训练数据中包含海量原生小程序代码,写原生代码的 Bug 率反而最低。

4.3 Step 3: 这里的 AI 懂规矩 (Vibe Coding 执行)

现在,我们拿着这份生成的readme.md(PRD),打开 Trae 或 Cursor。

Prompt:

@readme.md

你是资深前端开发。请根据这份需求文档,一步步实现这个微信小程序。

请先初始化项目结构,然后按模块实现功能。

见证奇迹的时刻:

  1. AI 阅读文档:它理解了这是“合同”。
  2. 生成结构app.json,pages/index,pages/game瞬间生成。
  3. 编写逻辑:它会自动实现“分数求和校验”逻辑,因为 PRD 里写了。
  4. 样式编写:它会根据 PRD 的描述写出 UI。

在这个过程中,你不需要去写wx.navigateTo,不需要去查文档看wx.setStorage怎么用。你只需要盯着屏幕,看着文件一个个变绿(Created),代码一行行出现。

如果发现 UI 稍微有点丑,比如按钮太小。

Vibe 修改:

“计分页面的按钮加大一点,用一种更鲜艳的颜色,增加点击态效果。”

AI 会立刻更新 CSS。

五、 Vibe Coding 带来的思考

通过这个计分小程序的开发过程,我们可以看到 Vibe Coding 带来的深刻变化。

5.1 开发者角色的转变

我们正在从Implementation (实现者)变成Orchestrator (编排者)

  • 以前,我们 80% 的时间在写代码,20% 的时间在思考。
  • 现在,我们 80% 的时间在思考需求、设计 Prompt、审核 Spec,20% 的时间在看 AI 生成代码。

5.2 提示词即源代码

在 Vibe Coding 时代,Prompt 就是新的源代码。

如果你保留了那个 Gemini 的对话记录(PRD 生成过程),你就保留了整个软件的 DNA。只要有这份 Prompt,你可以在任何支持 Vibe Coding 的编辑器里瞬间复刻出这个 App,甚至可以轻易地把它迁移到 Web 或 React Native,只需要修改 PRD 中的“技术栈约束”一栏。

5.3 SDD 的复兴

敏捷开发流行后,很多团队轻视文档。但 AI 的出现反而让文档变得前所未有的重要。

自然语言(需求)到 结构化语言(代码)之间,存在巨大的鸿沟。

SDD(规范文档)就是连接这两者的桥梁。它是 AI 能够理解的“中间语言”。未来的编程能力,很大程度上等同于编写高质量 Spec 的能力。

六、 结语

“手搓”一个微信小程序,不再需要几天几夜的编码。

通过 Vibe Coding 的理念,配合 Gemini 强大的逻辑规划能力和 SDD 范式,我们可以在几十分钟内,从一个模糊的想法,变成一个可运行、高质量的麻将计分产品。

Next Steps for You:

  1. 尝试 SDD:下次想写代码前,先忍住。先找 AI 聊聊,让它帮你生成一份详细的 PRD。
  2. 体验 Vibe:下载 Trae 或 Cursor,把你的 PRD 投喂进去,体验一次不写一行代码的开发流程。
  3. 拥抱变化:不要害怕 AI 夺走代码编写权,去掌握更高维度的“编排权”。

在这个 AI 浪潮下,能写清楚需求的人,比能写清楚代码的人,更强大。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询