Python設計模式 2 設計原則

2021-09-08 23:49:21 字數 661 閱讀 3494

開放/封閉原則(open closed principle)

類或者物件及其方法對於擴充套件來說,應該是開放的,但是對於修改來說,應該是封閉的.

優點:​ 現有的類不會被修改,因此退化的可能性較小

​ 它還有助於保持以前的**的向後相容性

控制反轉原則

高層級模組不應該依賴於低層級的模組,它們應該都依賴於抽象,細節應該依賴於抽象,而不是抽象依賴於細節.

優點:​ 消弱了模組間的緊耦合,因此消除了系統中的複雜性/剛性.

​ 由於在依賴模組之間有乙個明確的抽象層(由鉤子或引數提供),因此便於通過更好的方式處理模組之間的依賴關係.

介面隔離原則

客戶端不應該依賴於他們不需要使用的介面.

優點:​ 它強制開發人員編寫"**型"介面,並使方法與介面緊密相關.

​ 防止向介面中隨意新增方法

單一職責原則

類的職責單一,引起類變化的原因單一.當我們開發類的時候,這個類應該為特定的功能服務,如果乙個類實現了兩個功能,那麼最好將他們分開,也就是說,功能才是改變的理由.

優點:​ 每當乙個功能發生變化時,除了特定的類需要改變外,其他類無需改變.

​ 此外,如果乙個類有多種功能,那麼依賴它的類必定會由於多種原因而經歷多次修改,這是應該避免的.

替換原則

派生類必須能夠完全取代基類

Python設計模式 設計原則

1.單一職責原則 每個類都只有乙個職責,修改乙個類的理由只有乙個 2.開放 封閉遠端 ocp 開放是指可拓展性好,封閉是指一旦乙個類寫好了,就盡量不要修改裡面的 通過拓展 繼承,重寫等 來使舊的類滿足新的需求,而不是修改乙個類裡面的 3.依賴倒轉原則 高層模組不應該依賴底層模組,兩個都應該依賴抽象 ...

Python設計模式 設計原則

1.單一職責原則 每個類都只有乙個職責,修改乙個類的理由只有乙個 2.開放 封閉遠端 ocp 開放是指可拓展性好,封閉是指一旦乙個類寫好了,就盡量不要修改裡面的 通過拓展 繼承,重寫等 來使舊的類滿足新的需求,而不是修改乙個類裡面的 3.依賴倒轉原則 高層模組不應該依賴底層模組,兩個都應該依賴抽象 ...

設計模式 設計模式原則

1 單一職責原則 srp 乙個類應當只有乙個引起其變化的原因。使用單一職責原則的好處有 1 類的複雜性降低 2 可讀性提高 3 可維護性提高 4 變更引起的風險降低 2 黎克特制替換原則 lsp 在使用父類的地方,可以使用其子類替換。黎克特制替換原則的含義 1 子類必須完全實現父類的方法 2 子類可...