读书笔记-重构改善既有代码的设计(第二版)
重构改善既有代码的设计(第二版)
重构的定义
- 名词定义: 对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本.
- 动词定义: 使用一系列重构手法可观察行为的前提下,调整其结构.
- 重构过程的精髓: 小步修改,每次修改后进行运行测试.
- 重构和添加新功能
- 添加新功能是,我不应该修改既有代码,只管添加新功能.通过添加测试并让测试正常运行,我可以衡量自己的工作进度.
- 重构时我就不能再添加功能,只管调整代码的结构.此时我不应该添加任何测试(除非发现有先前遗漏的东西),只在绝对必要(用以处理接口变化)时才修改测试.
- 何时重构
Don Roberts给了我一条准则: 第一次做某件事时尽管去做;第二次做类似的事会产生反感,但无论如何还是要去做;第三次再做类似的事,你就应该重构.
事不过三,三则重构.
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 HoleLin's Blog!