設計模式之八大設計原則
阿新 • • 發佈:2018-12-13
面向物件設計原則: 一.依賴倒置原則(DIP): +高層模組(穩定)不應該依賴於低層模組(變化),二者都應該依賴於抽象(穩定)。 +抽象(穩定)不應該依賴於實現細節(變化),實現細節應該依賴於抽象(穩定)。 二.開放封閉原則(OCP) +對擴充套件開放,對更改封閉 +類模板應該是可擴充套件的,但是不可修改 三.單一職責原則(SRP) +一個類應該僅有一個引起它變化的原因 +變化的方向隱含著類的責任 四.Liskov替換原則(LSP) +子類必須能夠替換他們的基類(IS-A) +繼承表達型別抽象 五.介面隔離原則(ISP) +不應該強迫客戶依賴他們不用的方法 +介面應該小而完備 六.優先使用物件組合,而不是類繼承 +類繼承通常為“白箱複用”,物件組合通常為“黑箱複用” +繼承在某種程度上破壞了封裝性,子類父類耦合度高 +而物件組合只要求被組合的物件具有良好定義的介面,耦合度低 七.封裝變化點 +使用封裝來建立物件之間的分界層,讓設計者可以在分界層一側進行修改,而不會對另一側產生不良影響,從而實現層次間的鬆耦合 八.針對介面程式設計,而不是針對實現程式設計 +不將變數型別宣告為某個特定的具體類,而是宣告為某個介面 +客戶程式無需獲取物件的具體型別,只需要知道物件所具有具有的介面 +減少系統中各部分的依賴關係,從而實現“高內聚,鬆耦合”的型別設計方案