各設計模式關鍵詞
設計模式 | 特點 | 案例 |
---|---|---|
單例模式 | 一個類只能構造出唯一實例 | 創(chuàng)建菜單對象 |
策略模式 | 根據不同參數可以命中不同的策略 | 動畫庫里的算法函數 |
代理模式 | 代理對象和本體對象具有一致的接口 | 圖片預加載 |
迭代器模式 | 能獲取聚合對象的順序和元素 | each([1, 2, 3], cb) |
發(fā)布-訂閱模式 | PubSub | 瀑布流庫 |
命令模式 | 不同對象間約定好相應的接口 | 按鈕和命令的分離 |
組合模式 | 組合模式在對象間形成一致對待的樹形結構 | 掃描文件夾 |
模板方法模式 | 父類中定好執(zhí)行順序 | 咖啡和茶 |
享元模式 | 減少創(chuàng)建實例的個數 | 男女模具試裝 |
職責鏈模式 | 通過請求第一個條件例诀,會持續(xù)執(zhí)行后續(xù)的條件,直到返回結果為止 | if else 優(yōu)化 |
中介者模式 | 對象和對象之間借助第三方中介者進行通信 | 測試結束告知結果 |
裝飾者模式 | 動態(tài)地給函數賦能 | 天冷了穿衣服,熱了脫衣服 |
狀態(tài)模式 | 每個狀態(tài)建立一個類绊诲,狀態(tài)改變會產生不同行為 | 電燈換擋 |
適配者模式 | 一種數據結構改成另一種數據結構 | 枚舉值接口變更 |
觀察者模式 | 當觀察對象發(fā)生變化時自動調用相關函數 | vue 雙向綁定 |