
阅读时长:约35分钟
难度:★★★★★(合集最难的一课)
适合人群:已完成前18课,准备挑战最复杂场景的开发者
学完之后:面对任何混乱的老项目,你都有一套系统性的重构方法论
本合集的压轴之作
《Claude Code 从入门到精通》试读篇:Claude Code 是什么?你可能从第一步就用错了
《Claude Code 从入门到精通》试读篇:你的第一次 Director Mode 体验(二)
《Claude Code 从入门到精通》试读篇:写好 Prompt 的结构化思维,10组正反对比,看完直接套用(三)
《Claude Code 从入门到精通》试读篇:当 Claude 理解错了怎么办(四)
《Claude Code 从入门到精通》目标优于指令,Director Mode 第一支柱(五)
第06课:让 Claude 自己分配任务------并行 Agent 策略
《Claude Code 从入门到精通》第07课:结果验证------你最不能省的一步
第08课:CLAUDE.md,让 Claude 永远记住你的规矩
第09课:10个高频场景 Prompt 模板库,复制、改几个词、直接用
第12课:MCP 与 Hooks------给 Claude Code 装上插件和自动化引擎
第15课:3 个真实可用的 GitHub Actions,让 Claude 每天帮你自动做代码审查和安全扫描
第17课:Claude Code实战案例一,从零开发一个完整 API 模块
第18课教你在压力下修 Bug------考验的是冷静和流程。
这节课是最难的:老项目的系统性重构。
为什么最难?
新功能开发你可以自由设计;Bug 修复有明确的目标。但重构面对的是:
-
既有的烂代码,不能一夜推翻
-
还在运行的业务,不能停服
-
现有的团队成员,他们每天都在往里加新功能
-
积累的技术债,不知道从哪下手
更难的是------**重构没有"完成标志"**。什么时候算重构完了?代码变好了,但业务逻辑没变,怎么证明值得?怎么说服老板批准时间?怎么确保没有破坏现有功能?
这节课回答所有这些问题。
场景设定
时间:某周一早上的团队会议
背景:
你的团队维护一个电商后台系统,项目已经2年了。最近几个月大家都有同一个感受:开发速度越来越慢。
go
团队成员的吐槽:
- 小王:"改一个字段要在5个文件里改,经常漏。"
- 小李:"不敢重构,一动就挂。"
- 小张:"新人来一个跑一个,说看不懂这些代码。"
- 你:"我每次改 OrderService 都要看半天,它有2400行。"
技术经理在会上说:**"我们需要系统性重构一下这个项目。给你们两周时间,但不能影响业务,线上不能出问题。谁来负责?"**
你举手了。然后就开始发愁------两周重构两年的烂代码,从哪下手?
重构的本质:先想清楚"为什么"
大部分重构失败都是因为一开始就开始改代码。
正确的顺序是:
go
1. 为什么要重构?(目标定义)
2. 重构什么?(范围界定)
3. 怎么衡量成功?(验收标准)
4. 分几步?每步多久?(计划制定)
5. 怎么确保不出问题?(风险控制)
6. 才开始改代码
前5步花1-2天,后面的改代码才能高效。跳过前5步直接改,重构会变成灾难。
阶段1:摸底评估(第1天)
第一步:用 Claude 做系统化体检
不要靠"感觉"判断项目有哪些问题。让 Claude 做一次客观的技术债评估:
go
我要对项目做系统性重构。先做一次全面的技术债评估。
启动5个 Explore Agent 并行扫描,每个负责一个维度:
1. Agent 1(thoroughness: medium):
扫描所有 src/modules/ 下的代码
→ 识别超过 500 行的"上帝文件"
→ 识别超过 200 行的"上帝函数"
→ 列出前10名"最臃肿"的文件
2. Agent 2(thoroughness: medium):
分析代码重复情况
→ 找出明显相似的代码块(至少出现3次以上的模式)
→ 识别可以提取为公共函数的重复逻辑
3. Agent 3(thoroughness: quick):
扫描测试覆盖情况
→ 哪些模块有测试,哪些没有
→ 整体覆盖率
→ 最缺测试的3个模块
4. Agent 4(thoroughness: quick):
找"坏味道"
→ 硬编码的魔法字符串和数字
→ 嵌套超过4层的if/else
→ 超过10个参数的函数
→ TODO/FIXME 注释
5. Agent 5(thoroughness: medium):
分析模块间耦合
→ 识别高耦合的模块对
→ 识别循环依赖
→ 识别应该解耦但目前强耦合的地方
每个 Agent 只分析不修改。报告按严重程度分级。