<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
    有時你會看到這樣的對象:其內某個instance變量僅為某種特定情勢而設。這樣的代碼讓人不易理解,因為你通常認為對象在所有時候都需要它的所有變量。在變量未被使用的情況下猜測當初其設置目的,會讓你發瘋。

    請使用Extract Class(149)給這個可憐的孤兒創造一個家,然后把所有和這個變量相關的代碼都放進這個新家。也許你還可以使用Introduce Null Object(260)在[變量不合法]的情況下創建一個null對象,從而避免寫出[條件式代碼]。

    如果class中有一個復雜算法,需要好幾個變量,往往就可能導致壞味道Temporary Field的出現。由于實現者不希望傳遞一長串參數(想想為什么),所以他把這些參數都放進值域(fields)中。但是這些值域只在使用該算法時才有效,其他情況下只會讓人迷惑。這時候你可以利用Extract Class(149)把這些變量和其相關函數提煉到一個獨立class中。提煉后的新對象將時一個method object[Beck](譯注:其存在只是為了提供調用函數的途徑,class本身并無抽象意味)。
    posted on 2005-08-19 15:24 ivaneeo 閱讀(411) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
    主站蜘蛛池模板: 99在线视频免费| 最近的免费中文字幕视频 | 1区1区3区4区产品亚洲| 亚洲综合一区二区精品导航| 亚洲宅男精品一区在线观看| 国产成人综合久久精品亚洲| 国产va免费精品| 无码av免费毛片一区二区| 亚洲成av人片天堂网老年人| 亚洲AV成人精品网站在线播放| 最新亚洲卡一卡二卡三新区| a成人毛片免费观看| 暖暖在线视频免费视频| 日本高清免费网站| 亚洲国产AV无码专区亚洲AV| 亚洲日本VA午夜在线影院| 中文字幕成人免费高清在线| 日本特黄特色aa大片免费| 国产亚洲精彩视频| 国产亚洲精久久久久久无码77777 国产亚洲精品成人AA片新蒲金 | 亚洲色图在线观看| 美女被暴羞羞免费视频| 99久久精品日本一区二区免费| 激情97综合亚洲色婷婷五 | 亚洲最大的视频网站| 拍拍拍无挡免费视频网站| 亚洲成人在线电影| 毛片A级毛片免费播放| 美女的胸又黄又www网站免费| 老司机亚洲精品影视www| 亚洲精品美女久久7777777| 91免费人成网站在线观看18| 亚洲情综合五月天| 精精国产www视频在线观看免费| 全部免费毛片在线| 亚洲一区二区三区在线观看网站| 久久午夜伦鲁片免费无码| 久久亚洲国产最新网站| 亚洲色中文字幕无码AV| 一个人看www在线高清免费看| 亚洲欧洲久久精品|