(設計模式原則)SOLID I原則 -- 接口隔離原則

定義

客戶端不應該依賴它不需要的接口;一個類對另一個類的依賴應該建立在最小的接口上。

問題由來

類A通過接口I依賴類B,類C通過接口I依賴類D,如果接口I對于類A和類B來說不是最小接口,則類B和類D必須去實現(xiàn)他們不需要的方法。

uml

解決辦法

將臃腫的接口I拆分為獨立的幾個接口,類A和類C分別與他們需要的接口建立依賴關(guān)系。也就是采用接口隔離原則。

uml

補充

說到這里,很多人會覺的接口隔離原則跟之前的單一職責原則很相似,其實不然。

  • 其一,單一職責原則原注重的是職責;而接口隔離原則注重對接口依賴的隔離。
  • 其二,單一職責原則主要是約束類,其次才是接口和方法,它針對的是程序中的實現(xiàn)和細節(jié);而接口隔離原則主要約束接口接口,主要針對抽象,針對程序整體框架的構(gòu)建。

Reference

卡奴達摩專欄 -- 設計模式六大原則(4):接口隔離原則

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 設計模式六大原則 設計模式六大原則(1):單一職責原則 定義:不要存在多于一個導致類變更的原因。通俗的說,即一個類...
    viva158閱讀 821評論 0 1
  • 轉(zhuǎn)載標注聲明:http://www.uml.org.cn/sjms/201211023.asp 目錄:[設計模式六...
    Bloo_m閱讀 796評論 0 7
  • 設計模式六大原則(1):單一職責原則 定義:不要存在多于一個導致類變更的原因。通俗的說,即一個類只負責一項職責。 ...
    Jabir_Zhang閱讀 673評論 0 3
  • 程序設計的6大原則: 單一職責原則里氏替換原則依賴倒置原則接口隔離原則迪米特法則開閉原則 從根本學好,理解為什么要...
    silencefun閱讀 2,471評論 1 4
  • 事實上,我們一次也不會原諒! 有一個詞語叫城府,大致就是一個人能忍受多大的不快,城府越深,忍的越久、越多,請注意,...
    諾諾王的小弟閱讀 295評論 0 0

友情鏈接更多精彩內(nèi)容