代码重构
目录
代码重构
- 重构:提高软件可维护性的利器
- 重构:改变软件内部结构(代码/设计/架构),不改变外在行为,提高可维护性
- 为何重构:软件若不刻意去修正,必然趋向于腐化,破窗理论,更快增加新功能和修复 bug。
- 何时重构
- 增加新功能(老代码可扩展性差)
- 修改 bug 时(老代码有重复代码,可读性差,修改代码时才意识到什么地方有重复)
- 事不过三(类似的事情,重复代码)
- 时时刻刻重构
- 和当前改动不相干的代码可以先不重构。
- 现状:愿意主动去重构的人并不多(困境!)
- 重构 vs 重写/重新设计
- 重构,小步快跑,代码时刻处在可工作状态,极少的调试时间
- 定期大规模重构(清理代码,重构什么?只有新增功能或改 bug 时才容易发现需要重构的地方)vs 小步快跑
- 完备的自动化测试是重构强有力的后盾,自测试代码,Cl 和重构协同效应。
- 文化氛围(愿意去重构,出错不被指责)