小菜學設計模式——接口隔離原則

    背景

    本文標題爲何叫小菜學習設計模式,緣由是本文內容主要是學習《大話設計模式》時的筆記摘要部分,固然,並非記錄書中小菜的學習過程,這個徹底沒有意義,而是指本人學習設計模式的成長之旅。編程

    真誠的但願本身可以從一名小菜成長爲一名大鳥!
設計模式

    編寫的程序應該知足:
學習

    1)可維護
spa

    2)可擴展設計

    3)可複用
繼承

    4)夠靈活
接口

    廢話少說,言歸正傳,設計模式原則之:接口隔離原則
it

    書面理解

    接口隔離原則:使用多個小的專門的接口,而不要使用一個大的總接口。模板

    接口應該是內聚的,應該避免「胖」接口。一個類對另一個類的依賴應該創建在最小的接口上,不要強迫依賴不用的方法,這是一種接口污染。程序設計

    接口有效地將細節和抽象隔離,體現了對抽象編程的一切好處,接口隔離強調接口的單一性。而胖接口存在明顯的弊端,會致使實現的類型必須徹底實現接口的全部方法、屬性等;而某些時候,實現類型並不是須要全部的接口定義,在設計上這是「浪費」,並且在實施上這會帶來潛在的問題,對胖接口的修改將致使一連串的客戶端程序須要修改,有時候這是一種災難。在這種狀況下,將胖接口分解爲多個特色的定製化方法,使得客戶端僅僅依賴於它們的實際調用的方法,從而解除了客戶端不會依賴於它們不用的方法。

    分離的手段主要有如下兩種:

    一、委託分離,經過增長一個新的類型來委託客戶的請求,隔離客戶和接口的直接依賴,可是會增長系統的開銷。

    二、多重繼承分離,經過接口多繼承來實現客戶的需求,這種方式是較好。

    我的的理解

    接口隔離原則主要就是避免過大的接口出現,其實也就獲得了更多的接口問題。可是,只要知足接口之間的耦合性減弱,獨立性提升,那麼維護再多的接口也比維護一個大接口要強。接口若是必定義就註定包含了各類複雜的邏輯在裏面,那麼這個接口確定是失敗的,我的以爲,若是想要經過一個接口完成許多功能,能夠經過外觀模式、模板方法模式等進行小接口的組裝完成。

    接口隔離更突出的應該是隔離,無論怎麼樣程序設計最重要的一條原則是:高內聚、低耦合

相關文章
相關標籤/搜索