醫(yī)療美容培訓網站建設站長之家關鍵詞挖掘工具
目錄
1、封裝對象時的設計模式
2、基本結構與應用示例
2.1 工廠模式
2.2 建造者模式
2.3 單例模式
封裝的目的:①定義變量不會污染外部;②能作為一個模塊調用;③遵循開閉原則。
好的封裝(不可見、留接口):①變量外部不可見;②調用接口使用;③留出擴展接口。
1、封裝對象時的設計模式
模式 | 目的 | 應用場景 | 應用示例 | |
創(chuàng)建一個對象的模式 | 工廠模式 | 方便大量創(chuàng)建對象 | 當某一個對象需要經常創(chuàng)建的時候 | 多彩的彈窗;頁碼;jQuery |
建造者模式 | 需要組合出一個全局對象 | 當要創(chuàng)建單個、龐大的組合對象時 | 復雜的輪播圖;編輯器插件;vue的初始化 | |
保障對象只有一個 | 單例模式 | 需要確保全局只有一個對象 | 為了避免重復新建,避免多個對象存在互相干擾 | 全局數據儲存對象;vue-router |
2、基本結構與應用示例
2.1 工廠模式
基本結構:寫一個方法,只需要調用這個方法,就能拿到想要的對象
工廠模式示例:
(1)多彩的彈窗:彈窗有多種,它們之間存在內容和顏色上的差異。
- jquery需要操作dom,每一個dom都是一個jq對象
2.2 建造者模式
基本結構:把一個復雜的類各個部分,拆分成獨立的類,然后再在最終類里組合到一塊。
建造者模式的示例:
- 編輯器插件,初始化時需要配置大量參數,而且內部功能很多。
把不同的模塊拆分為不同的類,給類定義不同的方法;最后把不同的類組合在最終的使用類里。
- Vue的初始化:vue內部眾多模塊,而且過程復雜
2.3 單例模式
基本結構:通過定義一個方法,使用時只允許通過此方法拿到存在內部的同一實例化對象。
單例模式的示例:
- 寫一個數據儲存對象,全局儲存者只能有一個,不然會需要進行同步,增加復雜度
- Vue-router需要保障全局有且只有一個,否則會錯亂。