重构的原因
- 改善软件的设计水平;
- 使软件更加容易被理解;
- 使软件更加容易寻找错误;
- 使软件开发速度更快;
- 使软件代码更好维护。
重构的时间
- 增加函数的时候重构;
- 修改错误的时候重构;
- 代码审查的时候重构。
重构的主要方法
- Extract/Inline
- Method
- Class
- Subclass
- Superclass
- Interface
- Hierarchy
- Move
- Field
- Method
- Variable
- Rename
- Method
- Variable
- Class
- Pull Up
- Field
- Method
- Constructor Body
- Push Down
- Field
- Method
- Constructor Body
重构的工具
- IDE 提供了自动化的代码重构工具;
- JUnit 提供了自动化的测试框架;
- 设计模式提供了重构的方向;
- 极限编程提供了完整的开发过程,包括 : 结队编程、自动化测试、代码审查、及时反馈、代码重构等等