天天看點

重構老系統遺留代碼的一些方法學習筆記正交性(orthogonality)開放/閉合 原則(OCP,Open Closed Principle)

正交性(orthogonality)

表示某種不相依賴性或者解耦性。如果兩個或者更多事物種的一個發生變化,不會影響其他事物。這些事物就是正交的。在設計良好的系統中,資料庫代碼與使用者界面是正交的:你可以改變界面,而不影響資料庫,或者更換資料庫,而不用改變界面。

如果修改代碼中的現存行為隻需要到一個地方修改,即擁有正交性。

開放/閉合 原則(OCP,Open Closed Principle)

對擴充開放,意味着有新的需求或變化時,可以對現有代碼進行擴充,以适應新的情況。

對修改封閉,意味着類一旦設計完成,就可以獨立完成其工作,而不要對類進行任何修改。

實作開放封閉的核心思想就是對抽象程式設計,而不對具體程式設計,因為抽象相對穩定。讓類依賴于固定的抽象,是以對修改就是封閉的;

而通過面向對象的繼承和對多态機制,可以實作對抽象體的繼承,通過覆寫其方法來改變固有行為,實作新的擴充方法,是以對于擴充就是開放的。這是實施開放封閉原則的基本思路。

本文來自雲栖社群合作夥伴“汪子熙”,了解相關資訊可以關注微信公衆号"汪子熙"。