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

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

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

    不急不徐,持之以恒。

    http://blog.gopersist.com/

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      24 隨筆 :: 0 文章 :: 52 評論 :: 0 Trackbacks

    開-閉原則(Open-Closee Principle OCP)

     

    一個軟件實體,應當對擴展開放,對修改關閉。

    要求一個軟件系統可以在不修改原有代碼的情況下,通過擴展達到增強其功能的目的。

        

    a. 里氏代換原則(LSP): 任何基類出現的地方,子類一定可以出現。

    b. 依賴倒轉原則(DIP): 要依賴于抽象,不要依賴于實現。

    c. 合成/聚合復用原則(CARP): 要盡量使用合成/聚合,而不是繼承關系達到復用的目的。

    d. 接口隔離原則(ISP): 應當為客戶端提供盡可能小的單獨的接口,而不要提供大的總接口。

    e. 迪米特法則(LoD): 一個軟件實體應當與盡可能少的其他實體發生相互作用。

    只與朋友通信而不與陌生人說話。朋友的定義如下:

    ·         1. 當前對象本身(this);

    ·         2. 以參量形式傳入到當是對象方法中的對象;

    ·         3. 當前對象的實例變量直接引用的對象,如果當前對象的實例變量是一個聚集,則聚集中的元素都是朋友;

    ·         4. 當前對象所創建的對象。

    ·         以上法則的缺點是會產生很多小方法,降低效率,產生困惑。克服方法是使用依賴倒轉原則,建立一個抽象陌生人。

     

    將條件轉移語句改寫成為多態性。如果一個條件轉移語句確實封閉了某種商務邏輯的可變性,此時將可變性封裝起來才符合開-閉原則設計思想,否則就是多態性污染

     

    接口

    單方法接口、標識接口。

    不能使用常量接口。

     

    抽象類

    應盡可能不繼承具體類而只繼承抽象類。

    應當擁有盡可能多的共同代碼,以利于復用。數據應盡可能放到實現類,以減少內存占用。

     

    聯合使用接口和抽象類,即:定義一個接口,再定義一個抽象類實現這一接口,抽象類中將必要的方法實現。這樣做的目的是因為子類只能有一個父類,如果只有抽象類,則類型定義的次要類型將很難做,如果只有接口,則無法對通用部分做實現。 這其實就是缺省適配模式。統一命名規范為:Abstract + 接口名,如:接口Collection,抽象類AbstractCollection

    posted on 2010-03-30 08:44 老林 閱讀(2041) 評論(1)  編輯  收藏 所屬分類: 設計模式

    評論

    # re: 設計原則 2010-03-31 11:07 隔葉黃鶯
    樓主也在看《Java 與模式》呀  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国内外成人免费视频| 久久久久免费看黄A片APP| 免费永久在线观看黄网站| 亚洲中文字幕人成乱码| 日本免费网址大全在线观看| 亚洲精品无码久久毛片波多野吉衣 | 一区二区亚洲精品精华液| 九九精品免费视频| 亚洲一线产区二线产区区| 天天天欲色欲色WWW免费| 自拍偷自拍亚洲精品偷一| 亚洲AV无码一区二区三区国产| 免费人成网站永久| 伊人久久大香线蕉亚洲五月天| 好紧我太爽了视频免费国产| 亚洲91av视频| 最新中文字幕免费视频| 亚洲av永久中文无码精品综合 | 一级毛片在线播放免费| 亚洲人成无码网站| 99视频精品全部免费观看| 亚洲另类自拍丝袜第1页| 啦啦啦手机完整免费高清观看| 成人免费网站视频www| 亚洲国产成人一区二区精品区| 亚洲黄色免费电影| 亚洲av无码一区二区三区四区 | 亚洲AV无码一区二区三区在线| 国产国产成年年人免费看片| 国产乱妇高清无乱码免费| 97亚洲熟妇自偷自拍另类图片| 成人特黄a级毛片免费视频| 免费看一级高潮毛片| 久久久久亚洲精品影视| 成人性生活免费视频| 国产免费拔擦拔擦8X高清在线人| 亚洲AV色吊丝无码| 国产精品亚洲综合一区| 午夜福利不卡片在线播放免费| 成人免费网站久久久| 国产日本亚洲一区二区三区|