切换深色模式
项目实战
项目实战的目标不是“看起来做了很多东西”,而是训练你把模糊想法变成可运行、可验证、可维护的产品。
真实世界的任务通常不会给你完整说明书。更常见的是:
text
老板、客户或你自己说:我想做一个能解决某个问题的工具。
但页面、功能、数据、边界、验收标准都不清楚。Vibe Coding 的项目制训练,就是让你在相对安全的环境里提前练习:
- 拆解不清楚的问题;
- 查资料和补上下文;
- 设计第一版范围;
- 让 AI 小步实现;
- 阅读和改造 AI 生成代码;
- 调试、测试、部署和迭代;
- 最后交付一个能跑、能演示、能继续维护的版本。
项目难度分级
| 难度 | 项目目标 | 推荐项目 | 主要练习 |
|---|---|---|---|
| 入门 | 做出静态页面 | Landing Page、个人主页 | 页面结构、样式、文案、部署 |
| 初级 | 做出交互应用 | Todo App、Markdown 笔记工具 | 状态、表单、本地存储、调试 |
| 中级 | 做出带数据结构的工具 | Prompt 模板库、AI 工具导航站、知识库搜索 | 搜索、筛选、组件拆分、数据建模 |
| 进阶 | 做出 API 或插件 | API 服务、Chrome 插件 | 接口、权限、异步请求、错误处理 |
| 高级 | 做出完整产品原型 | 全栈应用、内部工具、AI 应用 Demo | 数据库、登录、部署、安全、维护 |
从创意到产品原型
推荐把每个项目都走一遍完整闭环:
01定义问题明确用户、场景、核心痛点和第一版范围。
02写规格整理 SPEC.md,明确要做什么和不做什么。
03拆任务把功能拆成 TASKS.md,每步都能验证。
04做骨架先让项目能启动,再逐步加功能。
05测质量调试、测试、审查和安全检查分开做。
06上线复盘部署演示版,收集反馈后再迭代。
第一版不要追求完整平台。更好的范围是:
text
一个用户
一个问题
一个核心功能
一个可演示版本为什么要用项目制训练
只看工具教程容易产生错觉:好像只要会几个 Prompt,就能做出产品。
真正困难的地方通常在这些环节:
- 需求模糊,AI 不知道该做什么;
- 生成的代码能跑一次,但难维护;
- 报错很多,不知道从哪里排查;
- 页面和功能能演示,但没有数据、权限和部署方案;
- 项目越做越大,Git diff 和文件结构失控;
- 代码上线前没有测试、安全和回滚方案。
项目制训练的价值是把这些问题提前暴露出来。你在小项目里踩过坑,后面做真实项目时就不会完全无感。
推荐学习顺序
1. Landing Page
目标:用最小成本完成一个可访问网页。
练习:
- 写清楚目标用户和价值主张;
- 生成页面结构;
- 调整视觉和响应式;
- 部署到静态站点平台。
2. Todo App
目标:做出有状态、有交互的小应用。
练习:
- 表单输入;
- 列表渲染;
- 新增、完成、删除;
- 本地存储;
- 基础调试。
入口:Todo App 实战
3. Markdown 笔记工具
目标:理解文本编辑、预览和本地数据。
练习:
- 文本输入;
- Markdown 预览;
- 本地保存;
- 文件结构设计。
4. Prompt 模板库
目标:把内容结构化,并做搜索、分类和复制。
练习:
- 数据结构;
- 搜索筛选;
- 卡片组件;
- 空状态;
- 用户体验。
入口:Prompt 模板库
5. AI 工具导航站
目标:做一个更接近真实产品的信息型工具。
练习:
- 分类体系;
- 搜索;
- 标签;
- 详情页;
- 后续内容维护。
入口:AI 工具导航站
6. API 服务
目标:从前端页面进入后端和接口。
练习:
- API 设计;
- 请求和响应;
- 错误处理;
- 环境变量;
- 测试。
入口:API 服务
7. 全栈应用
目标:把前端、后端、数据库、登录和部署串起来。
练习:
- 数据库表设计;
- 登录与权限;
- 服务端校验;
- 部署配置;
- 安全检查。
入口:全栈应用
每个项目的通用流程
每次做项目都按这个节奏走:
- 先写一句话项目目标。
- 让 AI 反问需求,不要直接写代码。
- 生成
SPEC.md。 - 生成
TASKS.md。 - 创建项目骨架,只做基础结构。
- 一次实现一个小任务。
- 每次修改后查看
git diff。 - 运行测试、构建或手动验证。
- 让 AI 做代码审查。
- 人工确认后再进入下一步。
项目完成标准
一个练习项目至少要满足:
- 能本地启动;
- 有清楚 README;
- 核心功能可演示;
- 关键代码你能解释;
- 没有明显控制台报错;
- 能查看并理解 Git diff;
- 有最基本的部署或演示方式;
- 知道它不适合直接用于生产的原因。
小结
项目实战不是为了炫耀 AI 能生成多少代码,而是训练你在不确定环境中把问题推进到结果。
真正的能力不是“让 AI 一次写完”,而是:
text
会拆问题
会给上下文
会控制范围
会验证结果
会复盘迭代