經典23種設計模式
阿新 • • 發佈:2018-12-15
六大設計原則:
單一原則:對於一個類或者介面來說,職責應該單一化。
里氏代換原則:子類必須擁有父類的全部能力,並且才可以在次基礎上擴充套件。(里氏代換原則是對實現抽象化的具體步驟的規範)。
開放-封閉原則:程式的實體物件應該可以進行擴充套件,但不應該可以修改。開放-封閉原則的核心就是面向抽象程式設計。
依賴倒轉原則:設計程式的時候,應該是實現依賴於抽象,而不是抽象依賴於實現。鼓勵面向介面程式設計,讓抽象使得各個類和模組實現彼此獨立。
合成/聚合原則:儘量不使用繼承,應儘量使用合成/聚合。其實就是介面和抽象類的區別,應該用“has-a”而不是用“is-a”,“is-a”會導致父類子類關係過於複雜。
迪米特法則:兩個類直接不應該直接通訊,如果要互相呼叫,應該使用一箇中介類來轉發這個呼叫。強調在類的結構設計上,應保護好自己的資訊,因為資訊隱蔽性越好,軟體複用性越高。
建立型模式:
工廠方法模式:提供一個用於建立物件的介面,讓子類決定例項化哪一個類。工廠方法使一個類的例項化延遲到其子類。
抽象工廠模式:提供一個建立一系列的物件的介面,而不需指定它們具體的類。(和建造者模式很像,抽象工廠模式注重瞭如何獲取一個例項)。
單例模式:保證一個類僅有一個例項。
建造者模式:將一個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。(注重瞭如何建造一個例項)。
原型模式:
未完待續……………………………………