# 核对表:安全的重构
- [] 每一改变都是系统改变策略的一部分么?
- [] 在重构之前,你保存了初始代码了么?
- [] 你是否保持较小的重构步伐?
- [] 你是否同一时间只处理一项重构?
- [] 在重构时你是否把要做的事情一条条列了出来?
- [] 你是否设置了一个停车场,把你在重构时所想到的任何东西记下来?
- [] 在每次重构后你会重新测试么?
- [] 如果所做的修改非常复杂,或者影响到了关键代码,你会重新检查这些修改么?
- [] 你是否考虑过特定重构的风险,并以此来调整你的重构方法?
- [] 你所做的修改是提升还是降低了程序的内在质量?
- [] 你是否避免了将重构作为先写后改的代名词,或者作为拒绝重写拙劣代码的托词?