<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ivaneeo's blog

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

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
    動機(Motivation)
    臨時變量的問題在于:它們是暫時的,而且只能在所屬函數內使用.由于臨時變量只有在所屬函數內才可見,所以它們會驅使你寫出更長的函數,因為只有這樣你才能訪問到想要訪問的臨時變量.如果把臨時變量替換為一個查詢式(query method),那么同一個class中的所有函數都將可以獲得這份信息.這將帶給你極大幫助,使你能夠為這個class編寫更清晰的代碼.

    Replace Temp with Query(120)往往是你運用Extract Method(110)之前必不可少的一個步驟.局部變量會使代碼難以被提煉,所以你應該盡可能把它們替換為查詢式.

    這個重構手法較為直率的情況就是:臨時變量只被賦值一次,或者賦值給臨時變量的表達式不受其他條件影響.其他情況比較棘手,但也有可能發生.你可能需要先運用Split Temporary Variable(128)或Separate Query from Modifier(279)使情況變得簡單一些,然后再替換臨時變量.如果你想替換的臨時變量是用來收集結果的(例如循環中的累加值),你就需要將某些程序邏輯(例如循環)拷貝到查詢式(query method)去.
    posted on 2005-08-25 14:43 ivaneeo 閱讀(266) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
    主站蜘蛛池模板: 亚洲精品国产精品| 在线免费观看亚洲| 色偷偷亚洲男人天堂| 久久天天躁狠狠躁夜夜免费观看| 亚洲国产成人久久精品影视 | 亚洲成av人无码亚洲成av人| 成年轻人网站色免费看| 国产精品亚洲专区在线观看 | 亚洲毛片基地日韩毛片基地| 中文字幕在线免费观看| 亚洲日韩区在线电影| 日本免费网站视频www区| 亚洲国产精品一区二区久| 青青草a免费线观a| 亚洲欧美日韩中文无线码| 日韩在线免费播放| 日日躁狠狠躁狠狠爱免费视频| 亚洲精品无码久久久| 国产啪精品视频网站免费尤物| 久久久亚洲AV波多野结衣| 日韩免费a级毛片无码a∨| 免费人成视频在线播放| 亚洲精品无码久久久影院相关影片| 国产成人精品无码免费看| 亚洲成a人片在线观| 日本高清色本免费现在观看| 深夜a级毛片免费视频| 国产l精品国产亚洲区在线观看| 思思re热免费精品视频66| 风间由美在线亚洲一区| 久久久久亚洲av无码专区蜜芽| 97无码免费人妻超级碰碰夜夜| www永久免费视频| 亚洲天堂一区二区三区四区| 国产又大又长又粗又硬的免费视频| 中文字幕免费在线视频| 亚洲伊人久久大香线蕉在观| 亚洲精品黄色视频在线观看免费资源| 亚欧免费一级毛片| 国产亚洲视频在线观看网址| 久久精品国产亚洲av水果派|