| 节奏 | 小步快跑,每步绿灯 |
|---|---|
| 分离 | 重构提交不含行为变化 |
| 防线 | 测试先行,持续集成及时反馈 |
一次重构的典型循环
一次重构的典型循环
1. 确认这步改动的目标(一个坏味道)
2. 若测试缺失:先补行为测试(characterization test)
3. 执行一次小改动(IDE 可用则用自动化重构)
4. 立即运行测试
5. 绿 → 提交;红 → 回退该步再分析重构期间不要顺手修缺陷或加功能:出现红灯时无法分辨是重构还是新逻辑引入。
安全重构靠流程而不靠自觉:小步改动、每步保持可编译可运行、提交粒度小、重构与功能分离、随时可回滚;任何一步失控立即退回上一步。
| 节奏 | 小步快跑,每步绿灯 |
|---|---|
| 分离 | 重构提交不含行为变化 |
| 防线 | 测试先行,持续集成及时反馈 |
1. 确认这步改动的目标(一个坏味道)
2. 若测试缺失:先补行为测试(characterization test)
3. 执行一次小改动(IDE 可用则用自动化重构)
4. 立即运行测试
5. 绿 → 提交;红 → 回退该步再分析