重构-基础1

重构

一、什么是重构?

重构,在不改变代码外在行为的前提下,对代码做出修改,以改进程序的内部结构,提高其可理解性,降低其修改成本。

二、重构的目的?

  1. 重构可以改进软件设计:整理代码,让所有东西都回到应处的位置上,例如:消除重复代码,会让后期的修改减少很多麻烦。
  2. 重构可以使软件更容易理解:设计合理的代码结构;让应该被理解的东西写进代码里(注释);重构技术可以更好的理解代码,并在重构过程中验证自己的理解;重构可以使得代码更简洁,使得更容易观察到其他层面的东西。
  3. 重构可以帮忙找到bug:因为重构会加深理解,更易发现bug。
  4. 重构可以提高编程速度:良好的设计是维护软件开发速度的根本。

三、什么情况下需要重构?

  1. 相似的事情做了三次及以上,此处需要重构;
  2. 添加新功能的时候,发现比较复杂,进行重构;
  3. 修补错误的时候,因为代码不够清晰而产生的bug,进行重构;
  4. 复审代码的时候,多人思考,寻找最佳设计,有必要的时候可以进行重构;

四、重构的原则

  1. 让代码更容易理解;
  2. 所有的逻辑都只在唯一的地点指定;
  3. 新的改动不会危及现有的逻辑;
  4. 尽可能简单的表达现有逻辑;

五、重构的方法

  1. 可靠的测试,必须保证原有功能不被破坏;
  2. 分解与重组,把大块代码分割,并把较小块代码移至合适类,每修改一处,就对该修改点进行测试;
  3. 合适的变量名,名字很重要,可以有助于快速理解代码;
  4. 函数应该放在合适的地方;
  5. 减少临时变量的使用,临时变量传来传去容易出错;

六、重构难题

  1. 数据库:将数据库结构和对象模型之间的依赖降到最低;
  2. 修改接口的时候要注意,因为接口可能已经被其他人调用,如果发生改变,比较麻烦,所以可以在旧接口里调用新接口,让用户尽量无感知;尽量减少对外公开接口的数量。
  3. 如果发现代码太过混乱,重构可能还不如重写来的快;
  4. 晚重构不如早重构,尽可能早的发现问题并修改。

七、重构与性能

如果因为性能问题需要重构代码时,一定要先用性能测试工具找出导致性能缓慢的原因,然后再针对性的进行修改。

原创文章 88 获赞 21 访问量 3万+

猜你喜欢

转载自blog.csdn.net/cfy1024/article/details/88840349
今日推荐