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

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

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

    走在架構師的大道上 Jack.Wang's home

    Java, C++, linux c, C#.net 技術,軟件架構,領域建模,IT 項目管理 Dict.CN 在線詞典, 英語學習, 在線翻譯

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      195 Posts :: 3 Stories :: 728 Comments :: 0 Trackbacks
     

    反模式讀書筆記之胖球(—)

    摘要:反模式作為一種新視角模式,在表述和指導開發上與傳統設計模式不同,他先提出模式的反面案例,而后在給出重構方案,這在指導開發人員(尤其是新手)不無裨益。本系列筆記為個人學習總結,也希望沒有接觸過反模式的朋友們一起學習進步。

    正文:

    1.   胖球產生的原因:

    胖球反模式本身是很簡單,但可能由于疏忽,后期沒加以控制,系統急于上線等等原因而出現了。

    胖球反模式通過描述一個或幾個類不斷的膨脹,以至吞食掉整個面向對象架構。一般胖球的出現是由于一個類壟斷了處理過程,而其他的類只是數據的封裝體。

    雖然OOA&D 提出了很久,但有些人的思維還停留在過程式的設計上,他們習慣把過程和數據分開,而不是OO中把融合了方法和數據的對象進行職責分割。胖球可能是需求分析不當的結果,也可能是系統不斷演進,迭代,新功能和新人員的加入而使部分構件異常龐大而沒有進行有效的職責分割,于是某個類成了構件或整個系統的主宰。

    總的來說,出現此種問題的原因主要是缺乏面向對象架構,缺乏對架構的實施和干預以及過程式需求的錯誤引導。

    2.   癥狀和后果:

    (1)           單個類擁有大量的屬性或操作。

    (2)           單個類中封裝了異類的、不相關的屬性和操作集。

    (3)           單個控制器類和幾個簡單的數據對象聯系在一起。

    (4)           缺乏面向對象的設計,一個控制器類幾乎封裝了所有的應用功能。

    (5)           控制器類通常過于復雜,無法復用和測試。

    (6)           把這么個大類加載如內存中的代價可能會很高。

    3.   重構方案:

    胖球重構的方法很簡單,就是把一些行為重新分配到某些封裝了數據的對象上,并對對象之間的關系從新調整(構件和連接件關系調整)。

    (1)         確定代表契約的關系操作和屬性集合,也就是把相關的屬性和方法歸類。

    (2)         尋找這些根據契約的到了集合的“自然的家”,并把它們遷移過去。

    (3)         移除所有的“遠耦合”或者說冗余的、間接的聯系。

    (4)         最后,移除所有的瞬時聯系。

    總之,我們把一個控制器類變成了一個協調器類,讓開始的數據類擴充一些處理邏輯,數據類在協調類的指導下進行操作,這也只是職責的遷移。

    胖球反模式有兩種形式為行為形式和數據形式,所謂行為形式及所有的處理過程都包含在一個對象中,它與系統中的大多數對象進行交互;數據形式的對象則包含的數據被系統的大部分其他對象所使用。





    本博客為學習交流用,凡未注明引用的均為本人作品,轉載請注明出處,如有版權問題請及時通知。由于博客時間倉促,錯誤之處敬請諒解,有任何意見可給我留言,愿共同學習進步。
    posted on 2008-09-23 14:39 Jack.Wang 閱讀(2089) 評論(0)  編輯  收藏 所屬分類: 架構師篇
    主站蜘蛛池模板: 大学生a级毛片免费观看| 久久精品毛片免费观看| 成人免费看吃奶视频网站| 亚洲电影唐人社一区二区| 成全视成人免费观看在线看| 一区二区三区亚洲视频| 美女黄网站人色视频免费| 免费国产人做人视频在线观看| 亚洲AV无码成人网站在线观看| 大陆一级毛片免费视频观看i| 亚洲精品无码久久久久A片苍井空| 女人18毛片a级毛片免费| 亚洲乱码日产精品一二三| 国产精品无码免费视频二三区| 男女超爽视频免费播放| 亚洲性在线看高清h片| 一级有奶水毛片免费看| 亚洲av无码一区二区乱子伦as| 91福利视频免费观看| 久久精品国产亚洲av麻豆蜜芽| 成人午夜视频免费| 亚洲国产精品不卡在线电影| 亚洲欧美国产欧美色欲| 亚洲熟女一区二区三区| 国产一级淫片a免费播放口| 亚洲国产综合91精品麻豆| 2021久久精品免费观看| 亚洲自偷自偷在线成人网站传媒| 国产大片51精品免费观看| 国产精品免费久久久久久久久| 亚洲AV人无码激艳猛片| 中字幕视频在线永久在线观看免费 | 亚洲国产二区三区久久| 国产在线jyzzjyzz免费麻豆| 亚洲av第一网站久章草| 日日噜噜噜噜夜夜爽亚洲精品| 可以免费观看的国产视频| 在线aⅴ亚洲中文字幕| 亚洲一区二区三区国产精品| 久久精品无码专区免费青青| 亚洲第一成年免费网站|