【重构二】重构的原则

113 阅读2分钟

何谓重构

  • 重构,顾名思义是重新构造代码,即在不影响代码外在行为的情况下对代码做出修改,以改进程序的内部结构。

为何重构

  1. 重构改善软件的设计
  2. 重构使软件更容易理解
  3. 重构帮助找到bug
  4. 重构提高变成速度

何时重构

在编程的每小时内,都可以做重构

重构的类型可以分为:

  1. 预备性重构:通过微调代码结构,让添加新功能更容易,
  2. 帮助理解的重构:使代码更容易理解
  3. 捡垃圾式重构:每次一小步重构,积少成多
  4. 有计划地重构:需要专门抽出时间做重构工作
  5. 长期重构:让团队达成共识,未来一段时间里逐步重构
  6. 复审代码时重构

何时不该重构

当重构的成本大于重写时,放弃重构

当代码暂且不需要理解其工作原理时,重构并不会产生价值

重构的挑战

  1. 延缓新功能开发
  2. 分支管理:常常会出现版本落后太多以致于代码合并出现巨大困难
  3. 测试:需要配合紧密的测试检验重构是否影响程序运行
  4. 遗留代码:遗留代码会增强阅读和重构的工作量

重构与软件开发过程

自测试代码、持续集成、重构必须是具有较强的协同效应,重构才能是有效的重构

重构与性能

软件的性能通常只与代码的一小部分相关,改变其他的部分往往对总能性能贡献甚微。

因此在大多数情况下可以忽略性能问题,如果产生性能损耗,先重构,再做性能优化,因为你在代码设计合理,阅读效率高的情况下做性能优化,可以使用更高效的调优方案,最后会得到既整洁又高效的代码。