重构的定义
重构是在不改变代码外在行为的条件下,对代码进行修改和整理,使其结构更加合理,让代码简洁易懂,提高产品质
量,增强系统健壮性的一种过程。
重构的原因
随着系统的功能的增加,代码的不断修改,人员的更替,于是原先的系统逐渐衰落和腐烂,代码质量逐渐沉沦。编码
变成一种胡砍乱劈的随意行为,系统中坑越来越多,越来越难以维护和修改,bug时不时的冒出来,以至于牵一发而
动全身,影响整个业务的运转。
重构的目的
1 重构就是让一些功能待在它应该呆的位置,而不是随意乱放。
2 提高代码的可阅读性,易于维护。
3.扫除一些系统的bug。
4 提高系统的性能和健壮性
重构基本流程
重构的每一步都十分的简单,你只需要把原有功能的代码抽取出来形成一个新的方法,或者把一个方法从一个class
挪移到另外一个class,抑或把某些代码推上推下就可以了. 但是聚沙成搭,这些简单而又繁琐的工作小小的渐进式修改
累积起来就可以使代码的质量得到根本的改善。细心,耐心和坚持是重构中比技术更要的品质。
流程图
重构中可靠的测试
构建一个可靠的测试环境可以说是重构中最为重要的一环,本来为提高质量而进行重构,却因为不小心而导致业务功
能出现问题这样就得不偿失了。重构中测试的代码比业务的代码要多的多,伴随一系列的功能的抽取和重组,从而衍
生出来的新方法和旧方法都必须经过一一的测试,方能保证重构的安全性和稳定性,可以说测试的有效覆盖率决定了
重构的风险和成败。
测试流程图
方法的抽取(Extract Method)
1 动机
当一个方法中代码过于冗长,或者其中有一大段代码都指向同一个功能,在或代码虽然简单但是抽取出来可以强化代
码的清晰度,那么请把它抽取出来吧
2 做法
3 注意
当对方法进行抽取的时候一定要注意全局参数和局部参数的影响。