7個常用的物件導向設計原則

2021-09-09 07:44:55 字數 307 閱讀 6536

乙個物件應該只包含單一的職責,並且該職責被完整地封裝在乙個類中。

軟體實體應當對擴充套件開放,對修改關閉。

所有引用基類的地方必須能透明地使用其子類的物件。

客戶端不應該依賴那些它不需要的介面。

高層模組不應該依賴低層模組,它們都應該依賴抽象。抽象不應該依賴於細節,細節應該依賴於抽象。

優先使用物件組合,而不是通過繼承來達到復用的目的。

每乙個軟體單位對其他單位都只有最少的知識,而且侷限於那些與本單位密切相關的軟體單位。

迪公尺特法則還有幾種定義形式,包括不要和「陌生人說話」,「只與你的直接朋友通訊」。

7個物件導向設計原則

物件導向設計原則概述 單一職責原則 開閉原則 黎克特制代換原則 依賴倒轉原則 介面隔離原則 合成復用原則 迪公尺特法則 物件導向設計原則概述 軟體的復用 reuse 或重用擁有眾多優點,比如可以提高軟體的開發效率,提高軟體質量,節約開發成本,恰當的復用還可以改善系統的可維護性。物件導向設計復用的目標...

物件導向7大設計原則(六) 開閉原則

定義 乙個軟體實體如類 模組和函式應該對擴充套件開放,對修改關閉。問題由來 在軟體的生命週期內,因為變化 公升級和維護等原因需要對軟體原有 進行修改時,可能會給舊 中引入錯誤,也可能會使我們不得不對整個功能進行重構,並且需要原有 經過重新測試。解決方案 當軟體需要變化時,盡量通過擴充套件軟體實體的行...

Python常用設計模式 物件導向設計原則

乙個軟體實體如類 模組和函式應該對擴充套件開放,對修改關閉。即軟體實體應該在不修改原 的情況下進行修改。所有引用父類的地方必須能透明地使用其子類地方必須能透明地使用其子類的物件,乙個簡單的例子加強理解 class user object defprint name self pass class v...