<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
    如果你看到用戶向一個對象索求(request)另一個對象,然后再向后者索求另一個對象,然后再索求另一個對象。。。。。。這就是Message Chain。實際代碼中你看到的可能是一長串getThis()或一長串臨時變量。采取這種方式,意味客戶將與查找過程中的航行結構(structure of navigation)緊密耦合。一旦對象間的關系發生任何變化,客戶端就不得不作出相應修改。

    這時候你應該使用Hide Delegate(157)。你可以在Message Chain的不同位置進行這種重構手法。理論上你可以重構Message Chain上的任何一個對象,但這么做往往會把所有中介對象(intermediate object)都變成Middle Man.通常更好的選擇是:先觀察Message Chain最終得到的對象是用來干什么的,看看能否以Extract Method(110)把使用該對象的代碼提煉到一個獨立函數中,再運用Move Method(142)把這個函數推入Message Chain。如果這條鏈上的某個對象有多位客戶打算航行此航線的剩余部分,就加一個函數來做這件事。
    posted on 2005-08-19 15:36 ivaneeo 閱讀(747) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
    主站蜘蛛池模板: 亚洲日韩av无码| 最新亚洲成av人免费看| 亚洲欧洲精品国产区| 1000部啪啪未满十八勿入免费| 久久亚洲国产伦理| 国产成人久久AV免费| 亚洲精品视频在线播放| 91手机看片国产永久免费| 亚洲精品123区在线观看| 白白国产永久免费视频| 黄色网址免费在线| 久久久久亚洲精品天堂久久久久久| 亚欧乱色国产精品免费视频| 久久综合亚洲色HEZYO国产| 两个人看的www免费| 久久精品国产亚洲AV麻豆不卡| 亚洲视频免费一区| 亚洲精品无码中文久久字幕| 亚洲&#228;v永久无码精品天堂久久 | 100000免费啪啪18免进| 亚洲kkk4444在线观看| 在线观看免费亚洲| 精品一区二区三区免费观看| 亚洲爱情岛论坛永久| 一二三四免费观看在线电影| 女bbbbxxxx另类亚洲| 亚洲国产一二三精品无码| **实干一级毛片aa免费| 亚洲欧美日韩中文无线码 | 日本一道在线日本一道高清不卡免费| 亚洲乱亚洲乱妇无码| 亚洲男人天堂2020| 久久精品一本到99热免费| 亚洲妇女无套内射精| 亚洲色自偷自拍另类小说| 免费视频爱爱太爽了| 粉色视频成年免费人15次| 亚洲av永久无码精品漫画| 国产va免费精品观看精品| 高清免费久久午夜精品 | 大胆亚洲人体视频|