代码审查与重构
背景: 项目中 src/utils/ 目录下有多个工具函数文件,存在重复逻辑,需要审查并重构。
完整的重构 SOP 见SOP:重构迁移。这里用一个具体场景演示重构流程。
第一步:让 Claude 发现问题
读取 src/utils/ 下所有文件,找出重复的逻辑。不要直接修改,先在 plan.md 中写出重构方案。Claude 的典型分析输出:
▶ 分析结果:
1. format.ts 中 formatDate 和 parseDate 都包含 ISO 时间解析逻辑,可合并
2. validate.ts 中的 email 正则与 format.ts 中的 email 格式化使用了同一正则
3. logger.ts 中三种日志级别的封装结构几乎相同,可抽取为通用函数第二步:审查方案
确认 Claude 的方案是否合理——不要全盘接受:
- 是否真的需要拆出
patterns.ts?如果正则只被两个文件用,保持原位可能更简单 - 重构后对外接口是否不变?调用方不需要改代码
- 是否有"不做的事"——比如不要同时重构所有文件,分批做更安全
第三步:执行重构
按 plan.md 的方案重构。重构后运行 npm test,确认所有测试通过。
对外接口不变——调用方不需要修改。第四步:验证
运行完整测试套件,确认重构没有引入新问题。
搜索是否有残留的旧代码引用(import 旧路径、调用旧函数名)。