AI编程实战:把老代码重构到能维护

写在前面
“这段代码我都不敢动”——老项目里的面条函数,是很多程序员的噩梦。重构的第一原则:先有测试保护,再动代码。
一、先写保护测试
重构前,先让 AI 根据现有行为写测试(用第 7 篇的技能):
为 process_order 函数编写行为测试,覆盖已知输入输出。目的是保护重构:重构后测试必须全部通过
这组测试是你的"安全带"——重构后跑不通,说明行为变了。
二、让 AI 拆函数
请重构这段代码,不改变任何行为。
- 现状:一个 300 行的函数,承担了解析、校验、计算、格式化四件事
- 期望:按职责拆成多个小函数,每个函数只做一件事,名字能说明意图
- 约束:保持对外接口签名不变;不改变业务逻辑;保留原有错误信息
- 先给拆分方案,再给完整代码
三、跑测试 + review
pytest
全绿后,人工 review 拆出来的函数:命名是否准确、依赖是否清晰、有没有过度拆分。
四、风险控制
一次只重构一个模块,改完立刻提交。不要"顺手"优化逻辑——重构阶段任何行为变化都算失败。
提示:重构的价值是"行为不变、结构变好"。测试全过是唯一标准,别相信"我觉得差不多"。
小结与下篇预告
这篇掌握了有保护的重构流程。下一篇《AI编程实战:用 AI 快速搭一个 Web 应用》,把技能扩展到 Web 开发。
小作业
挑一段你手头最"不敢动"的代码(100 行以上),走完整流程:保护测试 → 拆函数 → 跑测试 → review,并把前后对比记下来。

1284

被折叠的 条评论
为什么被折叠?



