重构基本概念总结
重构的概念
重构就是在不改变代码外在行为的前提下,对代码作出修改,以改进程序的内部结构。目的是提高代码的可理解性,降低修改成本。
重构的优点
重构能够改进软件的设计,消除重复代码,保证相同业务逻辑的代码在项目中只出现一次;重构使软件更容易理解,让代码流程更清晰,更易读;重构可以帮助找到bug;重构还能提高编程速度,当需要在程序中添加新功能时,好的程序可以帮助我们更快地找到在哪里添加代码,因为代码的模块划分很清晰。
重构方法:小步前进。
识别代码坏味道
能够识别出代码坏味道可以帮助决定什么时候需要重构,可以根据不同的坏味道选择不同的重构方法。
1、 神秘命名。
重构方法:改变函数声明、变量改名、字段改名。
2、 重复代码。比如同一个类的两个函数具有相同的表达式。
重构方法:提炼函数(一个类的两个方法有相同的语句)、移动语句、函数上移(两个互为兄弟的子类有相同的代码,可以先提炼函数,再上移函数)。
3、 过长函数。
重构方法:提炼函数、查询取代临时变量、引入参数对象、保持对象完整、以命令取代函数、分解条件表达式、以多态取代条件表达式、拆分循环。
4、 过长参数列表
重构方法:以查询取代参数、保持对象完整、引入参数对象、移除标记参数、函数组合成类。
5、 全局数据,在代码库的任何一个角落都可以修改它,容易引入不一致问题。
重构方法:封装变量(把全局数据用函数包装起来)。
6、 可变数据。不同的代