1. 结构严谨科学
整体结构是1到5章介绍重构的概念、原则以及什么时候重构,6到11章讲一些具体的重构手法,12章讲大型重构,13章总结性的论述重构、复用, 最后一章是整体的总结。
2. 内容完整详尽
内容上不管是最简单的Rename Method(273)还是Move Field(142)都非常详细的论述了该重构手法的概要、动机和详细步骤方法,同时附有代码案例。并且只要出现的重构手法,不管出现多少次,都括号里标有该重构手法的页码。
3. 层次上由浅入深
先是从重构概念原则介绍重构,再从函数的角度,对象的角度,数据的角度,类的角度去介绍各个重构手法,最后从整体的角度去描述大型重构。
4. 叙述上深入浅出
在介绍每种重构手法的时候,不是死板的只介绍本重构手法,而是会将相关的重构手法,相关的概念都拉通了叙述。比如本书在多个重构手法中讲解了继承和代理的适用条件。
5. 带来了重构新的观念和理解
之前个人理解的重构是大型重构,只是在代码不得不优化重构的时候进行的操作。本书告诉我们,重构的实施的节点应该是:
- 发现代码重复时,三次法则
- 添加功能时
- 修补错误时
- 复审代码时
6. 始于重构,高于重构
本书一直在强调几个重要的原则,小步修改并快速单元测试、复用和可读性的重要性。这些是整个软件开发,高质量代码的重中之重。不单单可以指导我们重构优化代码,更是强化我们的代码质量思维。不管是写代码还是优化代码,需要一直紧绷的一根弦。