Inline Temp 内联临时变量

动机

Inline Temp多半是作为Replace Temp with Query的一部分使用的,所以真正的动机出现在后者那儿。唯一单独使用Inline Temp的情况是:你发现某个临时变景被赋予某个函数调用的返回值。一般来说,这样的临时变量不会有任何危害,可以放心地把它留在那儿。但如果这个临时变量妨碍了其他的重构手法,例如Extract Method你就应该将它内联化。

做法

  • 检査给临时变量赋值的语句,确保等号右边的表达式没有副作用。

  • 如果这个临时变景并未被声明为final,那就将它声明为final,然后编译。

这可以检查该临时变量是否真的只被赋值一次。

  • 找到该临时变量的所有引用点,将它们替换为“为临时变量赋值”的表达式。

  • 每次修改后,编译并测试。

  • 修改完所行引用点之后,删除该临时变量的声明和赋值语句。

  • 编译,测试。

results matching ""

    No results matching ""