与其精通每一行代码,不如学会与 AI 共舞。
一、心法:氛围优先于语法
氛围编程(Vibe Coding)的核心不是"写正确的代码",而是描述清晰的意图。你是架构师与导演,AI 是执行者与工匠。
- 用自然语言表达"我想要什么",而非"代码怎么写"
- 接受模糊,拥抱迭代——第一稿从不完美
- 对话即开发,提示词即需求文档
二、提示词:精准即力量
好的提示词 = 上下文 + 目标 + 约束 + 示例
[背景] 我在构建一个个人博客系统,使用 Next.js 14 + Tailwind CSS
[目标] 实现一个支持 Markdown 渲染的文章详情页
[约束] 不使用第三方 UI 库,样式保持极简风格
[示例] 参考 https://example.com 的排版风格
提示词黄金法则
| 原则 | 错误示范 | 正确示范 |
|---|---|---|
| 具体化 | "写个登录页" | "写一个含邮箱+密码的登录表单,带表单校验,React + zod" |
| 约束化 | "优化这段代码" | "在不改变接口的前提下,优化此函数的时间复杂度" |
| 分步化 | 一次要求所有功能 | 先结构,再样式,再交互,分轮迭代 |
| 示例化 | 纯文字描述 | 附上截图、伪代码或参考链接 |
三、对话节奏:迭代的艺术
3.1 分层推进
第一轮:骨架 → "先给我页面的基础结构,不需要样式"
第二轮:填充 → "在此基础上加上数据请求逻辑"
第三轮:打磨 → "优化错误处理,加上 loading 状态"
第四轮:美化 → "参照这个设计稿调整样式"
3.2 纠偏策略
当 AI 跑偏时,不要重新开始——定位偏差,局部修正:
- ✅ "第三步的逻辑不对,应该是先校验再提交,其余保持不变"
- ❌ "不对,重新写"(信息丢失,容易原地打转)
3.3 确认再执行
面对复杂任务,先让 AI 输出计划:
"在写代码之前,先告诉我你的实现思路和文件结构"
四、代码审查:你是最后的守门人
AI 生成的代码必须经过你的验证,永远不要盲目复制粘贴。
审查清单
- 逻辑正确:核心逻辑是否符合预期?
- 边界处理:空值、异常、边界情况是否考虑?
- 安全风险:有无 SQL 注入、XSS、敏感信息泄露?
- 性能隐患:有无死循环、不必要的重渲染、内存泄漏?
- 依赖合理:引入的库是否必要且可信?
核心原则:读懂每一行你要运行的代码。不理解的代码,要求 AI 解释,而非跳过。
五、上下文管理:记忆即资产
AI 没有持久记忆,你负责维护上下文。
最佳实践
- 项目简报:每次新对话开头粘贴项目说明(技术栈、架构、约定)
- 保留关键代码:把核心接口、类型定义、配置文件放入上下文
- 命名一致性:在提示词中使用项目内已有的变量名、函数名
- 分文件分对话:不同模块开不同对话,避免上下文污染
## 项目简报模板
**项目**: [名称]
**技术栈**: [框架 + 语言 + 主要依赖]
**约定**: [命名规范、代码风格、目录结构]
**当前任务**: [本次对话的具体目标]
六、调试策略:把错误喂给 AI
遇到 bug,不要自己猜——把完整信息给 AI 诊断。
错误报告模板
【问题描述】点击提交按钮后页面无响应
【期望行为】应该发起 POST 请求并跳转到成功页
【实际行为】控制台报错如下:
TypeError: Cannot read properties of undefined (reading 'id')
at handleSubmit (Form.jsx:42)
【相关代码】
[粘贴相关函数]
【已尝试】检查了网络请求,请求没有发出
七、工具选择:用对武器
| 场景 | 推荐工具 |
|---|---|
| 快速原型 | Claude / ChatGPT 对话模式 |
| 编辑器内辅助 | GitHub Copilot / Cursor / Claude Code |
| 复杂重构 | Cursor Composer / Aider |
| 代码审查 | Claude 粘贴审查 |
| 文档生成 | Claude / Copilot Chat |
八、边界意识:AI 的能与不能
AI 擅长
- 样板代码、重复模式的快速生成
- 已知技术栈的标准实现
- 代码解释、重构建议
- 单元测试、文档注释
AI 不擅长
- 理解你的业务领域知识(需要你补充)
- 保证长期一致性(跨对话记忆有限)
- 创新性架构决策(需要你主导)
- 最新框架/库的细节(知识有截止日期)
九、氛围编程者的心态
好奇 > 完美主义
迭代 > 一步到位
理解 > 复制粘贴
协作 > 依赖
氛围编程不是"让 AI 替你写代码",而是以对话为媒介,以意图为驱动,以理解为底线,将创造力放大 10 倍的工作方式。
十、一句话总结
你提供方向感与判断力,AI 提供执行力与知识广度——两者缺一,皆不完整。
最后更新:2026 年 4 月