1.單一職責原則:每個類都只有乙個職責,修改乙個類的理由只有乙個
2.開放-封閉遠端(ocp):開放是指可拓展性好,封閉是指一旦乙個類寫好了,就盡量不要修改裡面的**,通過拓展(繼承,重寫等)來使舊的類滿足新的需求,而不是修改乙個類裡面的**。
3.依賴倒轉原則:高層模組不應該依賴底層模組,兩個都應該依賴抽象;抽象不應該依賴細節,細節應該依賴抽象。底層模組例如很多任務具類,例如專門用於管理sql連線的類,管理檔案,管理socket連線的類,高層類指具體實現需求的類。高層類和底層類都不應該相互依賴,不能出現高層類改變了,底層類就不能用了這種情況,兩個都依賴抽象是指連個都依賴與呼叫的api,即介面,在開發的過程中,一旦介面設計後就不要輕易改變,所以介面的設計是尤為重要的。細節應該依賴抽象,是指乙個類裡面功能的實現(細節)要依賴於呼叫該類的介面。
4.黎克特制轉換原則:子類必須能夠替換掉他們的父類,即父類可以實現的功能,子類一定可以實現。(貌似物件導向,一定會符合這個原則的吧?)
Python設計模式 設計原則
1.單一職責原則 每個類都只有乙個職責,修改乙個類的理由只有乙個 2.開放 封閉遠端 ocp 開放是指可拓展性好,封閉是指一旦乙個類寫好了,就盡量不要修改裡面的 通過拓展 繼承,重寫等 來使舊的類滿足新的需求,而不是修改乙個類裡面的 3.依賴倒轉原則 高層模組不應該依賴底層模組,兩個都應該依賴抽象 ...
Python設計模式 2 設計原則
開放 封閉原則 open closed principle 類或者物件及其方法對於擴充套件來說,應該是開放的,但是對於修改來說,應該是封閉的.優點 現有的類不會被修改,因此退化的可能性較小 它還有助於保持以前的 的向後相容性 控制反轉原則 高層級模組不應該依賴於低層級的模組,它們應該都依賴於抽象,細...
設計模式 設計模式原則
1 單一職責原則 srp 乙個類應當只有乙個引起其變化的原因。使用單一職責原則的好處有 1 類的複雜性降低 2 可讀性提高 3 可維護性提高 4 變更引起的風險降低 2 黎克特制替換原則 lsp 在使用父類的地方,可以使用其子類替換。黎克特制替換原則的含義 1 子類必須完全實現父類的方法 2 子類可...