物件導向設計原則

2021-08-29 15:46:13 字數 900 閱讀 7766

oo設計根本的指導原則是提高可維護性和可復用性。這些原則主要有:

1.單一職責原則

就乙個類而言,應該僅有乙個引起它的變化的原因

最簡單,最單純的事情最容易控制,最有效

類的職責簡單而且集中,避免相同的職責分散到不同的類之中,避免乙個類承擔過多的職責

2. 開閉原則 

乙個軟體實體(類,模組或元件)應該對擴充套件開放,對修改關閉。 

在設計乙個模組的時候,就當使這個模組可以在不被修改的前提下被擴充套件。換言之,就當可以在不必修改源**的情況下改變這個模組的行為。

3. 依賴倒轉原則 

依賴倒轉原則講的是:要依賴於抽象,不要信賴於實現。

開閉原則是目標,而達到這一目標的手段是依賴倒轉原則

4. 黎克特制代換原則

任何基類可以出現的地方,子類一定可以出現。

5. 合成/聚合復用原則 

要盡量使用合成/聚合,而不是繼承關係達到復用的目的。

6. 迪公尺特原則 

乙個軟體實體應當盡可能少的其他實體發生相互作用。模組之間的互動要少。這樣做的結果是當系統的功能需要擴充套件時,會相對更容易地做到對修改的關閉。 

乙個物件應當對其他物件有盡可能少的了解。

7. 介面隔離原則 

應當為客戶端提供盡可能小的單獨介面,而不要提供大的總介面。

也即是使用多個專門的介面比使用單一的總介面要好。

幾句經典話:

優先考慮使用組合,而不是繼承;

對擴充套件開放,對修改封閉;

面向介面程式設計,而不要面對實現程式設計;

乙個物件只負有一種責任;

don't call me, i will call you.

以上原則不必嚴格遵守,但是在設計程式設計是時應拿此參考。總之,目的是使設計最明了,最簡單(個人意見)

物件導向設計原則

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

物件導向設計原則

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

物件導向設計原則

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