六大設計原則 4 介面隔離原則

2021-09-17 00:19:12 字數 699 閱讀 1061

介面隔離原則(isp:inte***ce segregation principle)

定義:1.客戶端不應該依賴它不需要的介面

2.乙個類對另乙個類的依賴應該建立在最小介面上。

當我們設計乙個大的介面a,其子類b、c為實現介面功能,可能不得不寫一些不需要的空的方法,而客戶端需要b的實現時必須通過a這個非最小介面,因為其中包含客戶端不需要的方法。解決思路是為b、c分別建立不同的介面。

說到這裡,很多人會覺的介面隔離原則跟之前的單一職責原則很相似,其實不然。其一,單一職責原則原注重的是職責;而介面隔離原則注重對介面依賴的隔離。其二,單一職責原則主要是約束類,其次才是介面和方法,它針對的是程式中的實現和細節;而介面隔離原則主要約束介面介面,主要針對抽象,針對程式整體框架的構建。

採用介面隔離原則對介面進行約束時,要注意以下幾點:

介面盡量小,但是要有限度。對介面進行細化可以提高程式設計靈活性是不掙的事實,但是如果過小,則會造成介面數量過多,使設計複雜化。所以一定要適度。

為依賴介面的類定**務,只暴露給呼叫的類它需要的方法,它不需要的方法則隱藏起來。只有專注地為乙個模組提供定**務,才能建立最小的依賴關係。

提高內聚,減少對外互動。使介面用最少的方法去完成最多的事情。

運用介面隔離原則,一定要適度,介面設計的過大或過小都不好。設計介面的時候,只有多花些時間去思考和籌畫,才能準確地實踐這一原則。

設計模式六大原則(4) 介面隔離原則

介面隔離原則 強調的是客戶端不應該依賴它不需要的介面,乙個類對另乙個類的依賴應該建立在最小的介面上。介面隔離原則的含義是 建立單一介面,不要建立龐大臃腫的介面,盡量細化介面,介面中的方法盡量少。也就是說,我們要為各個類建立專用的介面,而不要試圖去建立乙個很龐大的介面供所有依賴它的類去呼叫。本文例子中...

設計模式六大原則(4) 介面隔離原則

從乙個龐大的介面中 隔離 出不同的適合的小介面,當類 實現 這些介面的時候,可以組合這些小的介面,如果不選擇 隔離 當類 實現 龐大的介面時,有些函式它需要,但是它又必須得實現,這樣設計上就出現了問題 介面 隔離 成合適的單元快!單一職責原則主要是約束類,其次才是介面和方法,主要針對的是程式中的實現...

六大設計原則 介面隔離原則

1 開閉原則 2 介面隔離原則 3 依賴倒置原則 4 迪公尺特原則 5 黎克特制替換原則 6 單一職責原則 客戶端不應該依賴它不需要的介面 乙個類對另乙個類的依賴應該建立在最小的介面上。簡單的來說就是要為各個類建立它們所需要的專用介面,而不要建立乙個很龐大的介面,供所有依賴它們的類去呼叫。介面a中有...