阅读(869) (8)

Inline重构

2018-10-22 11:07:52 更新

Inline重构

Inline(内联)重构与Extract重构相反。

实例1:内联变量

内联变量重构将变量或常量的冗余用法替换为其初始值设定项。此类型的重构仅适用于块作用域和函数作用域的变量。

Parenizor.method('toString', function () {
    var string = '(' + this.getValue() + ')';
    return string;
}
Parenizor.method('toString', function () {
    return '(' + this.getValue() + ')';
}

实例2:内联函数

内联方法/内联函数重构会导致将方法或函数的主体置于其调用方的主体中;方法/函数本身被删除。 

在下面的例子中,所述Sum()的主体被放置在Multiplication()和Division()主体内。

function Sum(a, b) {
    return a + b;
}

function Multiplication(a, b) {
    c = Sum(a, b);
    d = c * c;
    return d;
}

function Division(a, b) {
    c = Sum(a, b);
    d = Multiplication(a, b);
    result = c / d;
    return result;
}
function Multiplication(a, b) {
    c = a + b;
    d = c * c;
    return d;
}

function Division(a, b) {
    c = a + b;
    d = Multiplication(a, b);
    result = c / d;
    return result;
}

运行Inline重构

  • 在编辑器中,将光标放在要内联的符号上,然后按Ctrl+Alt+N,或在上下文菜单或主菜单上选择:Refactor|内联。