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

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

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

    ivaneeo's blog

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

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
    • 作法(Mechanics)
      • 找出[你想去除的指針]的保存值域,檢查它的每一個用戶,判斷是否可以去除該指針.
          • ==>不但要檢查[直接讀取點],也要檢查[直接讀取點]的調用函數(shù).
          • ==>考慮有無可能不通過指針函數(shù)取得[被引用對象](referred object).如果有可能,你就可以對取值函數(shù)(getter)使用Substitute Algorithm(139).從而讓客戶在沒有指針的情況下也可以使用該取值函數(shù).
          • ==>對于使用該值域的所有函數(shù),考慮將[被引用對象](referred object)作為引數(shù)(argument)傳進去.
      • 如果客戶使用了取值函數(shù)(getter),先運用Self Encapsulate Field(171)將[待除值域]自我封裝起來,然后使用Subsitute Algorithm(139)對付取值函數(shù),令它不再使用該(待除)值域.然后編譯,測試.
      • 如果客戶并使用取值函數(shù)(getter),那就直接修改[待除值域]的所有被引用點:改以其他途徑獲得該值域所保存的對象.每次修改后,編譯并測試.
      • 如果已經(jīng)沒有任何函數(shù)使用該(待除)值域,移除所有[對該值域的更新邏輯],然后移除該值域.
          • ==>如果有許多地方對此值域賦值,先運用Self Encapsulate Field(171)使這些地點改用同一個設值函數(shù)(setter).編譯,測試.而后將這個設值函數(shù)的本體清空.再編譯,再測試.如果這些都可行,就可以將此值域和其設值函數(shù),連同對設值函數(shù)的所有調用,全部移除.
      • 編譯,測試.
    posted on 2005-09-14 15:11 ivaneeo 閱讀(259) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
    主站蜘蛛池模板: 亚洲成av人片不卡无码久久| 无码中文字幕av免费放| 免费在线一级毛片| 亚洲AV无码一区二区三区鸳鸯影院| 无码一区二区三区AV免费| 精品亚洲成A人无码成A在线观看 | 日本亚洲欧洲免费天堂午夜看片女人员 | 狠狠热精品免费观看| 日本高清免费不卡视频| 日韩欧美亚洲中文乱码| 在线观看免费宅男视频| 久久综合亚洲色hezyo| 国产精品久久久久影院免费| 羞羞视频免费观看| 综合亚洲伊人午夜网| 日本免费中文字幕| 亚洲综合亚洲国产尤物| 午夜一级毛片免费视频| 免费人妻精品一区二区三区| 亚洲日产无码中文字幕| 日韩精品人妻系列无码专区免费| 亚洲国产成人手机在线电影bd| 青青草免费在线视频| 国产成人综合久久精品亚洲| 久久亚洲国产精品123区| 日本视频免费高清一本18| 亚洲av成人综合网| 午夜亚洲av永久无码精品| 久久久久免费精品国产| 亚洲中字慕日产2020| 免费一看一级毛片| 国产一级片免费看| 亚洲中文无码mv| 精品国产香蕉伊思人在线在线亚洲一区二区 | 在线观看亚洲AV日韩AV| 亚洲精品动漫人成3d在线 | 最近免费中文字幕4| 一区二区免费国产在线观看| 久久久久久亚洲AV无码专区| 免费鲁丝片一级在线观看| 青柠影视在线观看免费高清 |