物件導向設計原則

2021-09-17 02:35:05 字數 925 閱讀 5316

如何提高乙個軟體系統的可維護性和可父用性是物件導向設計需要解決的核心問題之一。

原則目的:高內聚,低耦合。高內聚值,乙個類或函式僅實現乙個功能。降低類與類之間的耦合關係。

設計原則表: 名稱

定義單一職責原則(single responsibility principle)

類的職責單一,對外只提供一種功能,而引起類變化的原因都應該只有乙個

開閉原則(open-closed principle)

類的改動是通過增加**進行的,而不是修改源**

黎克特制替換原則(liskov substitution principle)

任何抽象類出現的地方都可以用它的實現類進行替換,實際就是虛擬機制,語言級別實現物件導向功能(多型)

依賴倒轉原則(dependence inversion principle)

依賴抽象(介面),不要依賴具體的實現(類),即針對介面程式設計

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

不應該強迫使用者的程式依賴不需要的介面方法。乙個介面只提供一種對外功能。

合成復用原則(composite reuse principle)

如果使用繼承,會導致父類的任何變換都可能影響到子類的行為。而使用物件組合,就降低了這種依賴關係。對於繼承和組合,優先使用組合。

迪公尺特法則(law of demeter)

乙個物件應當對其他物件盡可能少的了解,從而降低各個物件之間的耦合,提高系統的可維護性。(即對不需要對外公開的,使用private或protected)

開閉原則:對擴充套件開放,對修改關閉,增加功能是通過增加**實現,而不是修改源**

依賴倒轉原則:傳統的設計傾向於高層次的模組依賴於低層次的模組,抽象層依賴與具體的層次。此時,中間層模組和高層模組的耦合極高。####依賴倒轉原則,高層業務邏輯依賴於抽象層,而具體實現層同樣依賴抽象層

物件導向設計原則

oo原則 封裝變化 多用組合,少用繼承 針對介面程式設計,不針對實現程式設計 為互動物件之間的松耦合而努力 類應該對擴充套件開放,對修改關閉 依賴抽象,不要依賴具體類 只和朋友交談 別找我,我會找你 類應該只有乙個改變的理由 從設計原則到設計模式 針對介面程式設計,而不是針對實現程式設計 客戶無需知...

物件導向設計原則

物件設計原則 物件導向設計原則 物件導向設計的基石是 開 閉 原則。開一閉 原則講的是 乙個軟體實體應當對擴充套件開放,對修改關閉。這個規則說的是,在設計乙個模組的時候,應當使這個模組可以在不被修改的前提下被擴充套件。從另外乙個角度講,就是所謂的 對可變性封裝原則 對可變性封裝原則 意味著兩點 1 ...

物件導向設計原則

oo原則 封裝變化 多用組合,少用繼承 針對介面程式設計,不針對實現程式設計 為互動物件之間的松耦合而努力 類應該對擴充套件開放,對修改關閉 依賴抽象,不要依賴具體類 只和朋友交談 別找我,我會找你 類應該只有乙個改變的理由 從設計原則到設計模式 針對介面程式設計,而不是針對實現程式設計 客戶無需知...