設計模式綜合總結

2021-10-01 21:12:07 字數 565 閱讀 1619

定義:動態地給物件新增一些額外的職責,就像是在牆上刷油漆,使用decorator模式相比生成子類方式達到功能的擴充顯得更為靈活.

為什麼使用:我們通常使用繼承來實現功能的擴充套件,如果這些需要擴充套件的功能種類繁多,那麼勢必生成很多子類,增加系統的複雜性;

同時,使用繼承實現功能拓展,我們必須可以預見這些擴充套件功能,這些功能是編譯時就確定了的,是靜態的.

----理由是:這些功能需要由使用者動態決定加入的方式和時機,.decorator提供了"即插即用"的方法,也就是在執行期間決定何時增加何種功能.

對目標物件進行功能的擴充套件.(jdk動態**,cglib動態**)
分層的目的就是將複雜問題進行拆解,然後分而治之,進而提高系統的可擴充套件性以及可維護性
普通的單體專案用不到cap原則(高可用性和一致性,在一定程度上是互斥的)

這是因為當乙個節點發生宕機,是沒法實現一致性的c,然而可以實現高可用性a;

當乙個節點想要實現高可用性a,那麼就要發生宕機,則無法實現一致性c

設計模式總結

http www.chenjiliang.com article view.aspx?articleid 6708 比較 設計模式 常用程度 適用層次 引入時機 結構複雜度 abstract factory 比較常用 應用級設計時 比較複雜 builder 一般 級 編碼時一般 factory me...

設計模式總結

模式相關的描述 裝飾者 包裝乙個物件,以提供新的行為 狀態 封閉了基於狀態的行為,並使用委託在行為之間切換 迭代器 在物件的集合之間遊走,而不暴露集合的實現 外觀 簡化一群類的介面 策略 封閉可以互換的行為,並使用委託來決定要使用哪乙個 包裝物件,以控制對此物件的訪問 工廠方法 由子類來決定要建立的...

設計模式總結

這類模式的特質是管理物件的建立過程。通常設計總是以使用工廠方法開始,當設計者發現需要更大的靈活性時,設計會向其它建立型模式演化。工廠方法模式 單例模式 抽象工廠方法模式 建造者模式 原型模式 簡單工廠模式 這類模式從程式的結構上解決模組之間的耦合問題。介面卡模式 裝飾模式 橋接模式 組合模式 享元模...