物件導向的七大設計原則

2021-10-02 05:00:57 字數 782 閱讀 2955

1、單一職責原則【single responsibility principle】:單一職責原則想表達的核心思想就是「高內聚」,乙個模組只完成一項功能。在物件導向設計中,乙個類只應該負責一項職責,如果同時承擔太多職責,就等於把這些職責耦合在了一起。

2、黎克特制替換原則【liskov substitution principle】:任何時候都可以用子型別來替換父型別。

3、依賴倒置原則【dependence inversion principle】:面向介面程式設計,宣告方法的引數型別、方法的返回型別、變數的引用型別時,盡可能使用抽象型別而不用具體型別,因為抽象型別可以被它的任何乙個子型別所替代,請參考下面的黎克特制替換原則。

4、介面隔離原則【inte***ce segregation principle】:建立單一介面,不要建立龐大臃腫的介面,盡量細化介面。

5、迪公尺特法則【low of demeter】:迪公尺特法則又叫最少知識原則,乙個物件應當對其他物件有盡可能少的了解。(低耦合)

6、開閉原則【open close principle】 乙個軟體實體如類、模組和函式應該對擴充套件開放,對修改關閉。

7、組合/聚合復用原則【composition/aggregation reuse principle(carp) 】:盡量使用組合和聚合,少使用繼承的關係來達到復用的原則。類與類之間簡單的說有三種關係,is-a關係、has-a關係、use-a關係,分別代表繼承、關聯和依賴。

其中,關聯關係根據其關聯的強度又可以進一步劃分為關聯、聚合和合成,但說白了都是has-a關係,合成聚合復用原則想表達的是優先考慮has-a關係而不是is-a關係復用**

物件導向七大設計原則

乙個軟體實體如類 模組和函式應該對擴充套件開放,對修改關閉。用抽象構建框架,用實現擴充套件細節。提高軟體系統的可復用性及可維護性。高層模組不應該依賴底層模組,二者都應該依賴其抽象 抽象不應該依賴細節 細節應該依賴抽象 針對介面程式設計,不要針對實現程式設計 應用層 高層 應用層的呼叫依賴低層的實現。...

物件導向七大設計原則

1 開閉原則 ocp open closed principle 核心 對擴充套件開放,對修改關閉。即在設計乙個模組的時候,應當使這個模組可以在不被修改的前提下被擴充套件。根據開閉原則,在設計乙個軟體系統模組 類,方法 的時候,應該可以在不修改原有的模組 修改關閉 的基礎上,能擴充套件其功能 擴充套...

七大物件導向設計原則

迪公尺特法則又稱為最少知道法則,當類與類之間的關係越來越密切時,耦合度也隨之增大,改動其中的乙個類就會出現其他類也需要改動的問題,牽一髮而動全身,這種高耦合的現象顯然並不適用於我們物件導向的程式設計,不僅不利於清晰業務的完成,還大大增加了程式設計師維護的難度,因此,1987年美國northeaste...