重新组织函数-Split Temporary Variable(

2019-12-18  本文已影响0人  瑾然有昫

有某个临时变量被赋值超过一次,它既不是循环变量,也不被用于收集计算结果.针对每次赋值,创造一个独立 对应的临时变量

示例

修改前:

$temp = 2 * ($this->height + $this->width);
print($temp);
$temp = $this->height * $this->width;
print($temp);

修改后:

$perimeter = 2 * ($this->height + $this->width);
print($temp);
$area = $this->height + $this->width;
print($area);

动机

临时变量有各种不同用途,其中某些用途会很自然的导致临时变量被多次赋值.循环变量和结构收集变量就是两个典型的例子:

做法

  1. 在待分解临时变量的声明及其第一次被赋值处,修改其名称
  2. 以该临时变量的第二次赋值为界限, 修改此前对该临时变量的所有引用点,让他们引用新的临时变量
  3. 在第二次赋值处, 重新声明原先那个临时变量
上一篇 下一篇

猜你喜欢

热点阅读