圣诞大减价开始了!

分裂临时变量

问题

您有一个局部变量,用于在方法中存储各种中间值(循环变量除外)。

解决方案

对不同的值使用不同的变量。每个变量应该只负责一个特定的事情。

之前
*(高+宽);System.out.println(临时);温度=高*宽;System.out.println(临时);
最终双周长= 2 *(高+宽);System.out.println(周长);最终双面积=高度*宽度;System.out.println(区域);
之前
*(高+宽);Console.WriteLine(临时);温度=高*宽;Console.WriteLine(临时);
只读双周长= 2 *(高+宽);Console.WriteLine(周长);只读双面积=高度*宽度;Console.WriteLine(区域);
之前
$temp = 2 * ($this->高度+ $this->宽度);echo $温度;$temp = $this->高度* $this->宽度;echo $温度;
$周长= 2 * ($this->高度+ $this->宽度);echo $周长;$area = $this->高度* $this->宽度;echo $区域;
之前
Temp = 2 *(高+宽)打印(Temp) Temp =高*宽打印(Temp)
周长= 2 *(高+宽)打印(周长)面积=高*宽打印(面积)
之前
设temp = 2 *(高+宽);console.log(临时);温度=高*宽;console.log(临时);
Const周长= 2 *(高+宽);console.log(周长);Const面积=高度*宽度;console.log(区域);

为什么重构

如果您在函数中减少变量的数量,并将它们用于各种不相关的目的,那么在需要对包含变量的代码进行更改时,一定会遇到问题。您必须重新检查变量使用的每个情况,以确保使用了正确的值。

好处

  • 程序代码的每个组件应该只负责一件事。这使得维护代码更加容易,因为您可以轻松地替换任何特定的东西,而不必担心意外的影响。

  • 代码变得更具可读性。如果一个变量是很久以前匆忙创建的,它可能有一个不能解释任何事情的名字:ka2价值等。但是您可以通过以一种可理解的、自解释的方式命名新变量来解决这种情况。这样的名字可能类似于customerTaxValuecityUnemploymentRateclientSalutationString诸如此类。

  • 如果您希望使用这种重构技术,那么这种技术将非常有用提取方法以后。

如何重构

  1. 找到代码中第一个给出变量值的地方。在这里,您应该将变量重命名为与所赋值相对应的名称。

  2. 在使用该变量值的地方使用新名称而不是旧名称。

  3. 对于变量被赋不同值的地方,根据需要重复此操作。

Baidu
map