第一组重构:
方法简介
将较难理解的程序段慢慢提炼为易懂的程序段,这样可节省往后开发中的阅读理解时间。
提炼函数、内联函数、提炼变量、内联变量
随着你对程序的理解加深,会需要考虑修正原来函数或变量的名称。改名或修改函数参数列表有利于使代码更贴合逻辑,易于理解;对于被广泛调用的变量,先封装后改名,可使改名变得简单;将结伴出现的参数组合在一起,不仅整理了相关逻辑,也减少函数参数列表的长度。
改变函数声明、变量改名、封装变量、引入参数对象
- 当调用了差不多数据的函数的数目变得多了起来,开始考虑要不要把他们组合成类,还是组合成变化?这样就将相关联的数据和操作方式组合成了一个个更高级的模块。更进一步地进行适当的拆分,可使各个模块的处理阶段界限分明。
函数组合成类、函数组合成变化、拆分阶段
细节、重点、感悟
-
提炼(Extract)
提炼,"将意图与实现分开"。如果你需要花时间浏览一段代码才能弄清楚它在干什么,你就可以把这把这段代码提炼成一个函数或把这段公式提炼成一个变量了。
function printDetail( aPeople )
{
console.log('Name is: ${aPeople.name}');
console.log('Age is: ${aPeople.age}');
console.log('Sex is: ${aPeople.sex}');
......
//在高层作用域中,我们并不关心这些函数的内部是如何运行的
}
提炼部分逻辑为函数,会遇见对传参后的后对该局部变量修改的问题。如果只修改一个参数的局部变量&#