展开知识库目录
重构前怎样固定现有行为,避免顺手改变业务逻辑
系统可能包含没有文档但业务依赖的行为。
重构前先把现有行为固定下来
系统可能包含没有文档但业务依赖的行为。先用特征测试、快照或真实请求记录输入输出,再改变结构;不要顺手修业务逻辑而不说明。
界定重构目标
写要改善的结构、可维护性或性能问题,以及明确不改变的外部行为。
把涉及的文件、目录、版本、命令和实际输出写进记录;代码变化同时保留 diff 与测试结果。
捕获当前行为
为关键输入、边界、错误和副作用添加特征测试,哪怕当前结果不理想也先记录。
确认“捕获当前行为”已经有可回查结果,再进入“建立安全小步”;依据仍然来自猜测时,把缺口单列并停在当前步骤。
建立安全小步
一次只移动、重命名或抽取一种结构,保持每步可编译、可测试和可审查。
确认“建立安全小步”已经有可回查结果,再进入“分开业务修复”;依据仍然来自猜测时,把缺口单列并停在当前步骤。
分开业务修复
发现真实 Bug 时单独记录和提交,先确认期望行为与负责人,不藏在重构中。
确认“分开业务修复”已经有可回查结果,再进入“比较前后证据”;依据仍然来自猜测时,把缺口单列并停在当前步骤。
比较前后证据
运行相同测试、接口样例和性能基线,审查 diff 是否只涉及目标范围。
需要修改时先限定文件和行为范围,无法说明回滚方式或影响面的动作先不执行。 完成后把证据归入“特征测试与前后差异报告”。
完成后应能在“特征测试与前后差异报告”中找到与这一步对应的记录;仍需靠猜测补全,就停在这里。
重构报告应证明行为未变
列原行为、保护测试、结构改动、测试和任何有意变化。无法用测试保护的路径写为残余风险,而不是默认安全。
