重新组织函数 - Introduce Explaining Variable

简述

Introduce Explaining Variable(引入介绍性变量)指将复杂表达式的结果放进一个临时变量,以此变量名称来解释表达式用。

if ((paltform.toUpperCase().indexOf("MAC") > -1) &&
(browser.toUpperCase().indexOf("IE") > -1) &&
wasInitialized() && resize > 0)
{
  //do something
}

改为

final boolean isMacOs = paltform.toUpperCase().indexOf("MAC") > -1
final boolean isIEBrowser = browser.toUpperCase().indexOf("IE") > -1
final boolean wasResized =  resize > 0
if (isMacOs && isIEBrowser && wasInitialized() && wasResized)
{
  //do something
}

动机

表达式有可能非常复杂而难以阅读。这种情况下,临时变量可以帮助你将表达式分解为容易管理的形式。

做法

  • 声明一个final临时变量,将待分解之复杂表达式中的一部分动作的运算结果赋值给它
  • 将表达式中的“运算结果”这一部分,替换为上述临时变量
  • 编译、测试
  • 重复上述过程,处理表达式的其他部分

你可能感兴趣的:(重新组织函数 - Introduce Explaining Variable)