Vibe Coding 开发技巧

转自:https://linux.do/t/topic/1700254
AI 大型项目编程方法论
一、核心原则
角色分工
AI辅助编程采用双角色分工模式:
| 角色 | 职责 | 适合的模型 |
|---|---|---|
| 规划/评审模型 | 需求分析、方案设计、质量评审、优化清单输出 | 强推理、长上下文的模型(Claude 4 Sonnet/Opus、GPT-4o、Gemini 2.5 Pro、DeepSeek R1) |
| 执行/编码模型 | 代码实现、功能开发、文档输出 | 代码生成快、指令跟随准的模型(Cursor集成Claude/GPT、Copilot、Codex、DeepSeek V3) |
循环迭代
AI输出 → 评审 → 优化清单 → 再执行 → 评审 → ...
反复迭代直到收敛(优化清单为空或测试全部通过)。
文档驱动
每个阶段产出对应文档,作为下一阶段的输入和评审依据。
二、新项目开发流程
阶段1:需求定义
目标:产出经过充分讨论和对比的需求文档。
步骤:
需求对话:与规划/评审模型(Claude 4、GPT-4o等)来回对话,逐步明确需求,形成需求文档初稿。
竞品对比:让规划/评审模型搜索并对比网络上相关项目,找出当前需求文档的不足之处。
需求定稿:根据对比结果完善需求,形成最终版需求文档。
产出:需求文档(定稿)
阶段2:技术设计
目标:产出可执行的技术实现文档。
步骤:
技术方案生成:将需求文档交给规划/评审模型,让其输出技术实现文档(架构设计、技术选型、模块划分等)。
文档归档:将需求文档和技术实现文档放入项目文件夹,作为后续开发的输入。
产出:技术实现文档
阶段3:周期开发
目标:将整体开发拆分为多个可控的小周期,逐个完成。
步骤:
初始化环境:进入项目文件夹,启动执行/编码模型(Cursor、Codex等)。
周期拆分:让执行/编码模型读取需求文档和技术文档,将整体开发拆分为多个开发周期,并输出每个周期的开发文档。
逐周期开发:执行/编码模型按开发周期文档逐个完成开发任务。
周期循环:当前周期完成后,进入下一个周期,直到所有周期完成。
产出:各周期开发文档、项目代码
阶段4:迭代优化(核心循环)
目标:通过多轮评审-优化循环,使代码质量收敛到可接受水平。
步骤:
功能文档生成:执行/编码模型根据当前项目结构和代码,输出完整的功能流程文档。
评审对比:将功能流程文档交给规划/评审模型,让其与原始需求文档和技术文档对比,找出差距,输出优化清单。
按清单优化:执行/编码模型按优化清单逐项修改代码。
更新文档:优化完成后,执行/编码模型更新功能流程文档。
循环判断:
- 若优化清单仍有未完成项 → 回到步骤3
- 若规划/评审模型评审后仍给出新优化清单 → 回到步骤2
- 若优化清单为空 → 进入下一阶段
产出:优化后的代码、更新后的功能流程文档
阶段5:测试验收
目标:通过多轮测试-修复循环,确保功能可靠性和完整性。
步骤:
测试清单生成:规划/评审模型根据需求文档和功能流程文档,输出测试清单(功能可靠性、完整性、边界情况等)和测试流程。
按清单排查:执行/编码模型按测试清单逐项排查,输出排查结果。
结果评审:将排查结果交给规划/评审模型,让其评估是否通过,并输出下一轮测试清单。
循环判断:
- 若仍有未通过的测试项 → 执行/编码模型修复,回到步骤2
- 若规划/评审模型给出新的测试清单 → 回到步骤2
- 若测试清单全部通过 → 流程结束
产出:测试通过的完整项目
三、老项目修改流程
阶段1:项目理解
目标:让AI理解现有项目结构,产出功能流程文档。
步骤:
项目读取:让执行/编码模型读取整个项目代码。
功能文档生成:执行/编码模型输出项目的功能流程文档。
- 若是微服务架构:每个服务单独运行此流程,产出各服务的功能流程文档。
产出:项目/各服务的功能流程文档
阶段2:修改规划
目标:根据修改需求,产出分模块的修改文档。
步骤:
修改文档生成:将功能流程文档和修改需求交给规划/评审模型,让其输出修改文档。
- 修改文档需按功能模块拆分。
- 若是微服务架构:为每个服务生成对应的修改文档。
开发文档拆分:将修改文档交给执行/编码模型,让其拆分为每个功能模块的独立开发文档。
产出:各功能模块的修改文档、开发文档
阶段3:模块开发(核心循环)
目标:逐个功能模块完成修改,每个模块都经过完整的优化循环。
步骤(针对单个功能模块):
模块修改:执行/编码模型按该模块的开发文档进行代码修改。
模块文档生成:修改完成后,执行/编码模型输出该模块的完整功能流程文档。
评审对比:将模块功能流程文档和模块修改文档交给规划/评审模型,让其对比差距,输出优化清单。
按清单优化:执行/编码模型按优化清单逐项修改。
循环判断:
- 若优化清单仍有未完成项 → 回到步骤4
- 若规划/评审模型评审后仍给出新优化清单 → 回到步骤3
- 若优化清单为空 → 进入该模块的测试阶段
模块测试:
- 规划/评审模型输出该模块的测试清单
- 执行/编码模型按清单排查
- 循环直到测试全部通过
下一模块:当前模块完成后,回到步骤1,开始下一个功能模块。
产出:各模块修改后的代码、模块功能流程文档
阶段4:测试验收
目标:整体测试所有修改模块的集成效果。
步骤:
集成测试清单:规划/评审模型输出跨模块的集成测试清单。
集成测试执行:执行/编码模型按清单排查,输出结果。
循环修复:直到所有集成测试通过。
产出:测试通过的完整项目
四、流程概览图
┌─────────────────────────────────────────────────────────────┐
│ 新项目开发流程 │
├─────────────────────────────────────────────────────────────┤
│ 需求定义 → 技术设计 → 周期开发 ⇄ 迭代优化 → 测试验收 │
│ ↑____________↓ │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 老项目修改流程 │
├─────────────────────────────────────────────────────────────┤
│ 项目理解 → 修改规划 → 模块开发(循环) → 测试验收 │
│ ↑___各模块依次完成___↓ │
└─────────────────────────────────────────────────────────────┘