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 閱讀(172) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
          主站蜘蛛池模板: 鹤山市| 龙南县| 四会市| 海宁市| 蓬安县| 桐城市| 苏尼特左旗| 舒兰市| 秀山| 钦州市| 合作市| 南康市| 岐山县| 嘉善县| 营口市| 山东省| 沁水县| 阿尔山市| 临桂县| 尼玛县| 和林格尔县| 永定县| 漯河市| 滁州市| 商河县| 台南县| 江城| 德钦县| 武汉市| 永泰县| 巴彦县| 吉木萨尔县| 眉山市| 花莲县| 尤溪县| 楚雄市| 阜南县| 余江县| 东乡县| 阿瓦提县| 夏邑县|