面向?qū)ο笤O(shè)計(jì)的SOLID原則

單一責(zé)任原則:

當(dāng)需要修改某個(gè)類的時(shí)候原因有且只有一個(gè)(THERE SHOULD NEVER BE MORE THAN ONE REASON FOR A CLASS TO CHANGE)。換句話說就是讓一個(gè)類只做一種類型責(zé)任,當(dāng)這個(gè)類需要承當(dāng)其他類型的責(zé)任的時(shí)候,就需要分解這個(gè)類。
SingleResponsibilityPrinciple2_71060858

開放封閉原則
軟件實(shí)體應(yīng)該是可擴(kuò)展,而不可修改的。也就是說,對(duì)擴(kuò)展是開放的,而對(duì)修改是封閉的。這個(gè)原則是諸多面向?qū)ο缶幊淘瓌t中最抽象、最難理解的一個(gè)。


OpenClosedPrinciple2_2C596E17

里氏替換原則

當(dāng)一個(gè)子類的實(shí)例應(yīng)該能夠替換任何其超類的實(shí)例時(shí),它們之間才具有is-A關(guān)系
LiskovSubtitutionPrinciple_52BB5162

依賴倒置原則
  1. 高層模塊不應(yīng)該依賴于低層模塊,二者都應(yīng)該依賴于抽象2. 抽象不應(yīng)該依賴于細(xì)節(jié),細(xì)節(jié)應(yīng)該依賴于抽象
    DependencyInversionPrinciple_0278F9E2

接口分離原則
不能強(qiáng)迫用戶去依賴那些他們不使用的接口。換句話說,使用多個(gè)專門的接口比使用單一的總接口總要好。


InterfaceSegregationPrinciple_60216468
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容