ivaneeo's blog

自由的力量,自由的生活。

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
你的程序以一个临时变量(temp)保存某一表达式的运算结果.

将这个表达式提炼到一个独立函数中.将这个临时变量的所有[被引用点]替换为[对新函数的调用].新函数可被其他函数使用.

double basePrice = _quantity * _itemPrice;
if(basePrice > 1000)
   return basePrice * 0.95;
else
   return basePrice * 0.98;
                                    |   |
                                    |   |
                                   \    /
if(basePrice() > 1000)
   return basePrice() * 0.95;
else
   return base() * 0.98;
...
double basePrice() {
   return _quantity * _itemPrice;
}
posted on 2005-08-25 14:22 ivaneeo 阅读(161) 评论(0)  编辑  收藏 所属分类: refactoring-从地狱中重生

只有注册用户登录后才能发表评论。


网站导航: