提炼函数
前提是先理解原先代码完成的功能,然后将理解转化到代码里,然后开始思考重构:
1.检查变量的作用域:变量会被提炼后的函数使用,但不会被修改,那么我们可以将它们以参数方式传递进来,会被修改的变量可以从函数返回或者初始化到函数里最后返回。
2.跑一遍测试,看有无破坏其他代码模块。
3.提炼完成后,可以考虑进一步提升函数的表达能力,例如给变量改名,使得代码看起来更简洁
提炼函数在IEDA中的快捷操作
可以选中需要重构的代码片段然后 Refactor–>extract–>Metho,然后填写重构后的方法名,IEDA会自动生成一个方法并在原代码处调用它
快捷键是Ctrl+Alt+M
重构的精髓
小步修改,每次修改后就运行测试
使用查询取代临时变量
移除局部作用域的变量:具体意思是将声明的只使用一次的局部变量提炼成一个查询Method