注意事项

  1. 重构时不能添加新功能,只管改进程序的结构。
  2. 不要过早发布接口,请修改你的代码的所有权,使重构更流畅。
  3. 1% 的代码影响了 90% 的执行效率,不要只靠猜想来判断效率瓶颈,要量化出来。

重构的几个好处

  1. 改进软件设计
  2. 使软件更容易理解
  3. 帮助找到 BUG
  4. 提高编程速度

何时重构

  1. 添加功能时重构
  2. 修补错误时重构
  3. 复审代码时重构
  4. 三次法则:第一次做某件事情只管去做,第二次做类似的事情时虽然反感,但还是可以做;第三次再做类似的事情,就应该重构了。

程序存在的问题

  1. 难以阅读,难以修改 —— 目标:容易阅读
  2. 逻辑重复的程序,难以修改 —— 目标:所有逻辑都在唯一地点指定
  3. 添加新行为时需要修改现有代码,难以修改 —— 目标:新的行为不会危及已有行为
  4. 带复杂条件逻辑的程序,难以修改 —— 目标:尽可能简单表达条件逻辑

重构是这样的一个过程:它在一个可运行的程序上进行,在不改变程序行为的前提下使其具备美好的性质,使我们能够继续保持高速开发,从而持续提升程序的价值。