外观
第10章 实战案例
约 3636 字大约 12 分钟
2026-06-09
这一章来聊聊几个我用 Codex 做过的实际案例,从零搭项目到修 Bug 到写文档,看完你就知道 Codex 到底能帮你干啥了。不吹牛,都是真事儿。
案例1,从零开始搭一个新项目
事情是这样的
假设你想做一个简单的待办事项(Todo)应用,前后端都要有,但不知道从哪下手。
怎么做?
第1步,建个文件夹,进到里面
mkdir my-todo-app && cd my-todo-app
git init第2步,告诉 Codex 你想要啥
codex然后输入,
帮我从零创建一个待办事项应用。要求,
1. 前端用 React + TypeScript
2. 后端用 Node.js + Express
3. 数据先用内存存储(不用数据库)
4. 功能,添加、删除、标记完成、查看列表
5. 界面简洁就行,不用太花哨第3步,Codex 先规划,你看看行不行
Codex 会给你一个方案,
Codex,计划这样实现,
1. 项目结构,
- client/ — React 前端
- server/ — Express 后端
- package.json — 项目配置
2. 后端 API,
- GET /api/todos — 获取列表
- POST /api/todos — 添加待办
- PUT /api/todos/:id — 更新状态
- DELETE /api/todos/:id — 删除
3. 前端页面,
- 输入框 + 添加按钮
- 待办列表展示
- 每项可标记完成、可删除你觉得方案没问题,让它开始干。
第4步,Codex 动手干活
它会自动创建文件、写代码、装依赖,一步一步搞定。你只需要在它问"可以改这个文件吗"的时候点确认就行。
第5步,看看效果,调整细节
# Codex 装完依赖后帮你启动
npm run dev打开浏览器看看效果。觉得哪里不满意就继续跟 Codex 说,
列表项之间加点间距,完成的项目用灰色显示加删除线加一个过滤功能,可以看"全部"、"未完成"、"已完成"这个案例的关键收获
| 要点 | 啥意思 |
|---|---|
| 描述要具体 | 说清楚用什么技术、要什么功能,别只说"做一个应用" |
| 先看方案再执行 | 让 Codex 先出计划,你确认了再让它动手 |
| 分步调整 | 第一次做出来的东西肯定不完美,一点点调就好 |
| 用 Git 管理 | 每个大改动之前先 commit,出问题可以回退 |
案例2,程序报错了,帮我修
事情是这样的
你的项目突然跑不起来了,控制台报了一堆红字,看半天也不知道问题在哪。
怎么做?
第1步,启动 Codex
cd /你的项目路径
codex第2步,把报错信息直接扔给 Codex
运行项目的时候报错了,错误信息如下,
TypeError: Cannot read properties of undefined (reading 'map')
at TodoList (src/components/TodoList.jsx:15:22)
at renderWithHooks (node_modules/react-dom/.../react-dom.js:16175:18)第3步,Codex 帮你分析
Codex 会告诉你是怎么回事,
问题在 TodoList.jsx 第15行,
你用了一个可能是 undefined 的变量调了 .map()。
这说明传给 TodoList 组件的 todos 属性没有正确传入。
可能的原因,
1. 父组件没有传 todos 属性
2. API 返回的数据结构不对
3. 初始值设成了 undefined 而不是 []第4步,让 Codex 帮你修
帮我修一下这个问题,确保 todos 为空的时候也不会报错Codex 会直接帮你改代码。加个默认值、加个空值检查,几分钟搞定。
第5步,再跑一次确认
再跑一下看看修好没这个案例的关键收获
- 把完整的错误信息贴给 Codex,越完整越好,包括文件名和行号
- 别只说"报错了"——说清楚你做了什么操作、期待什么结果、实际出了什么错
- 修完了让 Codex 再跑一遍确认,别光看它说修好了就信了
提示
遇到错误的时候,千万别自己瞎猜。把错误信息完整地贴给 Codex,它定位问题的速度比你自己搜 Google 快多了。
案例3,让 Codex 帮忙写文档
事情是这样的
项目写完了,但是文档为零。老板催着要,自己又不想花时间写。咋办?让 Codex 来。
怎么做?
第1步,启动 Codex
cd /你的项目路径
codex第2步,告诉 Codex 你要什么文档
帮我给这个项目写一份 README.md 文档。要求,
1. 项目简介——这个项目是干什么的
2. 技术栈——用了哪些技术
3. 安装和启动步骤——让新人能跑起来
4. 项目结构说明——每个目录是干啥的
5. API 文档——每个接口的用法
6. 常见问题——可能会遇到的坑
用中文写,简洁明了第3步,Codex 自己读代码然后写文档
Codex 会先扫描你的项目,看看都有什么文件、用了什么技术、怎么启动的,然后自动生成文档。
第4步,检查一下,改改细节
API 文档部分加上请求和响应的示例常见问题部分加一条,怎么解决端口被占用的问题用 codex exec 也行
如果你不想聊天,一行命令搞定,
codex exec -o README.md "为这个项目生成一份中文 README 文档"直接把结果写到 README.md 里,省事。
这个案例的关键收获
| 要点 | 啥意思 |
|---|---|
| 说清楚文档要包含哪些部分 | 不然 Codex 可能只写个简单的介绍 |
| 生成后要检查 | Codex 写的文档整体质量不错,但细节可能需要你调整 |
用 -o 参数直接输出到文件 | 比复制粘贴方便 |
| 让它写示例代码 | 文档里光有说明没有示例,别人看了还是不会用 |
案例4,用 Codex 做代码审查
事情是这样的
写完了一段新功能,想让别人帮忙看看代码有没有问题。但同事都忙着呢,等不了。让 Codex 先审查一遍。
怎么做?
第1步,让 Codex 看看你改了啥
cd /你的项目路径
codex帮我审查一下最近改动的代码,关注以下几点,
1. 有没有安全漏洞
2. 有没有性能问题
3. 有没有逻辑错误
4. 命名和代码风格规不规范
5. 有没有边界情况没处理的第2步,Codex 给你审查报告
Codex 会给你一份详细的审查报告,
审查结果,
🔴 严重问题(2个),
1. 第42行,SQL 查询用字符串拼接,存在 SQL 注入风险
建议,改用参数化查询
2. 第78行,用户密码明文存储
建议,使用 bcrypt 加密后存储
🟡 需要注意(3个),
1. 第15行,循环里做了重复的数据库查询,建议缓存
2. 第33行,错误处理只用了 console.log,建议用日志系统
3. 第56行,魔法数字 86400,建议定义常量 SECONDS_PER_DAY
🟢 好的地方,
1. 函数命名清晰,一看就知道干啥的
2. 代码结构合理,模块划分得当第3步,让它帮你修
把标红的那两个严重问题修一下Codex 会直接帮你改好。
也可以用 codex exec 一行命令审查
# 审查当前分支相对于 main 的所有改动
codex exec "对比 main 分支,审查所有改动,用中文列出问题"这个案例的关键收获
- 让 Codex 先做初审,人做终审——效率最高
- 审查的时候说清楚关注什么(安全、性能、风格...),不然它可能抓不住重点
- Codex 标红的要仔细看,标黄的可以选择性处理
案例5,重构一个老项目
事情是这样的
接手了一个老项目,代码写得那叫一个乱——重复代码到处都是,函数一个比一个长,命名也看不懂。想整理但不知道从哪下手。
这是所有案例里最复杂的一个,咱们画个流程图看看怎么做。
怎么做?
第1步,让 Codex 先摸摸底
先帮我分析一下这个项目的代码质量。告诉我,
1. 大概有多少文件、多少行代码
2. 代码结构合不合理
3. 最需要重构的部分是什么
4. 有哪些明显的问题(重复代码、过长函数、嵌套太深等)Codex 会给你一份"体检报告"。
第2步,制定重构计划
根据分析结果,给一个重构计划。注意,
1. 每次只重构一个模块
2. 每次重构完都要确保功能不变
3. 先从最简单的开始,复杂的放后面第3步,一个模块一个模块来
从第一个模块开始重构重构完了,
跑一下测试确认功能没变没问题就 commit,然后继续下一个。
第4步,让 Codex 总结
帮我总结一下这次重构做了哪些改动,改了多少文件、多少行代码这个案例的关键收获
- 先分析再动手 —— 别上来就改,先让 Codex 给你一个全局分析
- 小步前进 —— 一次改一点,改完验证,别一口气改几十个文件
- 每步都 commit —— 出问题可以回退
- 先简单后复杂 —— 先搞定容易的建立信心,复杂的后面慢慢来
- 有测试才放心 —— 没有测试的项目,先让 Codex 帮你补测试再重构
注意
重构老项目是最容易翻车的场景。一定要用 Git 管理好每个版本的改动。改一个模块 commit 一次,千万别改了一堆东西都不保存。
案例6,写一个数据处理脚本
事情是这样的
你有一堆数据需要处理——比如把一个 CSV 文件里的数据清洗一下,汇总统计后生成报表。手动搞要半天,写个脚本几分钟就跑完。
怎么做?
第1步,把数据文件放到项目目录里
mkdir data-scripts && cd data-scripts
# 把你的 CSV 文件放进来
cp ~/Downloads/sales-data.csv .
git init第2步,告诉 Codex 你想干啥
codex帮我写一个 Python 脚本处理 sales-data.csv。需求,
1. 读取 CSV 文件
2. 清洗数据,去掉重复行、处理空值、修正格式
3. 按月份汇总销售额
4. 按产品类别统计销售数量
5. 生成一个汇总报表,保存为 Excel 文件
6. 生成一个简单的文字版统计摘要第3步,Codex 写脚本
它会自动创建一个 Python 脚本,包含数据读取、清洗、统计、输出的完整流程。
第4步,跑一下看看
跑一下这个脚本看看结果对不对第5步,调整
汇总报表里加一列"同比增长率",跟去年同期对比空值的处理改成用上一行的值填充,不要直接删掉这个案例的关键收获
- 数据处理的脚本特别适合让 Codex 写——逻辑明确,输入输出清晰
- 说清楚数据格式(CSV 的列名、数据类型等),Codex 写得更准
- 让 Codex 跑一次看看结果,比你自己检查更快
- 数据量大的时候,让 Codex 帮你优化性能(比如用 pandas 代替循环)
我的真实感受
用 Codex 做了这么多实际项目之后,有几个真切的感受想分享一下,
做得好的
- 从零搭项目,Codex 真的能帮你从一片空白搭出一个能跑的项目,这点确实厉害
- 修 Bug,只要你能把错误信息描述清楚,Codex 定位问题又快又准
- 写文档,以前最讨厌写文档了,现在让 Codex 生成个初稿,自己再改改,轻松多了
- 代码审查,相当于多了一个特别认真的同事帮你 review 代码
做得一般的
- 老项目重构,能做,但需要你一步步引导。Codex 对项目上下文的理解还是有限的,特别是那种业务逻辑很复杂的项目
- 性能优化,它能给出一些常规建议,但真正深入的性能调优还是得靠人
- 创意性的工作,比如设计一个全新的架构方案,Codex 更像是执行者而不是创意者
最重要的一条经验
你描述需求越清楚,Codex 给你的结果就越好。 这是一句废话,但是是实话。别嫌麻烦,多说两句,把背景、目标、限制条件都说清楚。花两分钟描述需求,省下两小时改来改去。
小结
六个案例的要点总结,
| 案例 | 干了啥 | 核心收获 |
|---|---|---|
| 从零搭项目 | 用 Codex 创建完整的 Todo 应用 | 描述要具体,先看方案再执行 |
| 修 Bug | 贴报错信息让 Codex 定位修复 | 完整的错误信息是关键 |
| 写文档 | 让 Codex 扫描项目自动生成文档 | 说清楚要包含哪些章节 |
| 代码审查 | Codex 自动审查 PR | 说清楚关注点,先机器审后人审 |
| 重构老项目 | 一步步引导 Codex 重构 | 小步前进,每步 commit |
| 数据脚本 | 写数据清洗和统计脚本 | 输入输出描述清楚就行 |
怎么描述需求更有效?
| 不太好的说法 | 更好的说法 |
|---|---|
| "帮我写个东西" | "帮我用 Python 写一个 CSV 数据清洗脚本,处理空值用前一行填充" |
| "这里报错了" | "运行 npm start 时报了 TypeError: Cannot read properties of undefined,完整错误如下..." |
| "优化一下" | "这个接口在1000条数据时响应要5秒,帮我优化到1秒以内" |
| "改一下代码" | "把 utils.js 里的 formatDate 函数改成支持中文日期格式输出" |
提示
一句话总结,越具体越好。 告诉 Codex 文件在哪、问题是什么、你期望的结果是什么。模糊的指令只会得到模糊的结果。
下一章来聊聊一些进阶玩法和我踩过的坑,帮你少走弯路,第11章 一些进阶玩法和踩坑经验
