版权声明:请注明转发出处 https://blog.csdn.net/mafucun1988/article/details/89349779
《重构:改善既有代码的设计》中提到过很多重构方法,关于重新组织函数的方法有9种。本文介绍:
内联临时变量 inline temp
- 名称:内联临时变量 inline temp
- 概要:有一个临时变量,只被一个简单表达式赋值一次。将所有对该变量的引用动作,替换为对它赋值的那个表达式自身。
- 动机:这个临时变量妨碍了其他重构手法
- 做法:
- 检查给临时变量赋值的语句,确保等号右边的表达式没有副作用
- 找到该临时变量的所有引用点,将它们替换为临时变量赋值的表达式
- 编译,测试
- 删除该临时变量的声明和赋值语句
- 再编译,测试
- 代码演示:
修改之前的代码:
double RefactorMethod::GetPrice()
{
return 100;
}
bool RefactorMethod::IsPriceCheap()
{
double price = m_Fruit.GetPrice();
return (price > 1000);
}
修改之后的代码:
double RefactorMethod::GetPrice()
{
return 100;
}
bool RefactorMethod::IsPriceCheap()
{
return (m_Fruit.GetPrice() > 1000);
}