面向?qū)ο蟪绦蛟O(shè)計原則

面向?qū)ο蟪绦蛟O(shè)計特點(diǎn):封裝、繼承和多態(tài)
設(shè)計原則、模式不產(chǎn)生代碼,只是代碼邏輯上的一種規(guī)范。

1.SOLID

一、單一職責(zé)原則:

全稱:“Single-Responsibility Principle”
每一個類應(yīng)該專注于做一件事情。

二、開放-封閉原則

全稱:“Open-Closed Principle”
面向擴(kuò)展開放,面向修改關(guān)閉。

三、里氏代換原則

全稱:“Liskov Substitution Principle”
超類存在的地方,子類是可以替換的。

四、接口隔離原則

全稱:“Interface Segregation Principle”
應(yīng)當(dāng)為客戶端提供盡可能小的單獨(dú)的接口,而不是提供大的總的接口。

五、依賴倒置原則

全稱:“Dependence Inversion Principle”
實現(xiàn)盡量依賴抽象,不依賴具體實現(xiàn)。
這個原則是開閉原則的基礎(chǔ),具體內(nèi)容:針對接口編程,依賴于抽象而不依賴于具體。
具體依賴抽象,上層依賴下層。假設(shè)B是較A低的模塊,但B需要使用到A的功能,這個時候,B不應(yīng)當(dāng)直接使用A中的具體類;而應(yīng)當(dāng)由B定義一抽象接口,并由A來實現(xiàn)這個抽象接口,B只使用這個抽象接口;這樣就達(dá)到了依賴倒置的目的,B也解除了對A的依賴,反過來是A依賴于B定義的抽象接口。通過上層模塊難以避免依賴下層模塊,假如B也直接依賴A的實現(xiàn),那么就可能造成循環(huán)依賴。
所以:采用依賴倒置原則可以減少類間的耦合性,提高系統(tǒng)的穩(wěn)定性,減少并行開發(fā)引起的風(fēng)險,提高代碼的可讀性和可維護(hù)性。

六、迪米特原則,又稱最少知道原則

全稱:“Law of Demeter”
一個軟件實體應(yīng)當(dāng)盡可能少的與其他實體發(fā)生相互作用。

七、組合/聚合復(fù)用原則

全稱:“Composite/Aggregate Reuse Principle CARP”
盡量使用合成/聚合達(dá)到復(fù)用,盡量少用繼承。原則: 一個類中有另一個類的對象。

八、高內(nèi)聚、低耦合

高內(nèi)聚指的就是單一職責(zé)原則,一個類做的職責(zé)越單一,內(nèi)聚度就越高,低耦合,指的就是依賴倒置原則,盡量使用抽象耦合去代替具體耦合

參考鏈接1.面向?qū)ο笃叽笤O(shè)計原則
參考鏈接2.面向?qū)ο蟪绦蛟O(shè)計八大原則
參考鏈接3.面向?qū)ο笤O(shè)計的七個原則
參考鏈接4.面向?qū)ο蟪绦蛟O(shè)計與原則

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

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

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