摘要:外觀模式為子系統(tǒng)中的一組接口提供一個(gè)一致的界面,模式定義了一個(gè)高層接口,這個(gè)接口使得這一子系統(tǒng)更加容易使用。代碼外觀模式啟動(dòng)啟動(dòng)啟動(dòng)外觀模式優(yōu)點(diǎn)減少系統(tǒng)相互依賴。適用場景為復(fù)雜的模塊或子系統(tǒng)提供外界訪問的模塊。
外觀模式
為子系統(tǒng)中的一組接口提供一個(gè)一致的界面,F(xiàn)acade模式定義了一個(gè)高層接口,這個(gè)接口使得這一子系統(tǒng)更加容易使用。隱藏系統(tǒng)的復(fù)雜性,并向客戶端提供了一個(gè)客戶端可以訪問系統(tǒng)的接口。降低訪問復(fù)雜系統(tǒng)的內(nèi)部子系統(tǒng)時(shí)的復(fù)雜度。在客戶端和復(fù)雜系統(tǒng)之間再加一層,將調(diào)用順序、依賴關(guān)系等處理好。
實(shí)例模擬電腦啟動(dòng),假設(shè)電腦啟動(dòng)順序:啟動(dòng)CPU,啟動(dòng)內(nèi)存,啟動(dòng)硬盤,加載數(shù)據(jù)等。
代碼// 外觀模式 function CPU() { this.startup = function () { console.log("啟動(dòng)CPU"); }; } function Memory() { this.startup = function () { console.log("啟動(dòng)Memory"); }; } function Disk() { this.startup = function () { console.log("啟動(dòng)Disk"); }; } function Computer() { var _cpu, _memory, _disk; _cpu = new CPU(); _memory = new Memory(); _disk = new Disk(); this.start = function () { _cpu.startup(); _memory.startup(); _disk.startup(); } } computer = new Computer(); computer.start();外觀模式優(yōu)點(diǎn)
1.減少系統(tǒng)相互依賴。
2.提高靈活性。
2.提高了安全性。
1.為復(fù)雜的模塊或子系統(tǒng)提供外界訪問的模塊。
2.客戶程序與抽象類的實(shí)現(xiàn)部分之間存在著很大的依賴性。引入facade 將這個(gè)子系統(tǒng)與客戶以及其他的子系統(tǒng)分離,可以提高子系統(tǒng)的獨(dú)立性和可移植性。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/79532.html
摘要:推文用設(shè)計(jì)模式解構(gòu)三國是一種什么體驗(yàn)行為型設(shè)計(jì)模式一策略模式工廠模式優(yōu)化結(jié)構(gòu)狀態(tài)模式隨著狀態(tài)改變而改變行為。推文狀態(tài)機(jī)與狀態(tài)模式責(zé)任鏈模式多個(gè)對(duì)象依次處理請(qǐng)求前者指定后者。代理模式代理針對(duì)一個(gè)對(duì)象,為了增加控制等中介雙方都是多個(gè),為了解耦。 策略模式 選擇使用封裝好的一系列算法,可相互替換。 類比:商店[Context]買完衣服買單[Stratege](現(xiàn)金[Concrete Stra...
摘要:分別為適配器模式,裝飾器模式,代理模式,外觀模式,橋接模式,組合模式,享元模式。設(shè)計(jì)模式五適配器模式適配器模式將某個(gè)對(duì)象的接生成器和協(xié)程的實(shí)現(xiàn)在這篇文章中,作者針對(duì)那些比較難以理解的概念,以一個(gè)更為通俗的方式去講明白。。 PHP 源碼注解 PHP 的詳細(xì)源碼注解 PHP 字符串操作整理 一些有關(guān)字符串的常用操作。 Redis 常見七種使用場景 (PHP 實(shí)戰(zhàn)) 這篇文章主要介紹利用 R...
摘要:大潮來襲前端開發(fā)能做些什么去年谷歌和火狐針對(duì)提出了的標(biāo)準(zhǔn),顧名思義,即的體驗(yàn)方式,我們可以戴著頭顯享受沉浸式的網(wǎng)頁,新的標(biāo)準(zhǔn)讓我們可以使用語言來開發(fā)。 VR 大潮來襲 --- 前端開發(fā)能做些什么 去年谷歌和火狐針對(duì) WebVR 提出了 WebVR API 的標(biāo)準(zhǔn),顧名思義,WebVR 即 web + VR 的體驗(yàn)方式,我們可以戴著頭顯享受沉浸式的網(wǎng)頁,新的 API 標(biāo)準(zhǔn)讓我們可以使用 ...
摘要:總體來說設(shè)計(jì)模式分為三大類創(chuàng)建型模式共五種工廠方法模式抽象工廠模式單例模式建造者模式原型模式。優(yōu)點(diǎn)一實(shí)例控制單例模式會(huì)阻止其他對(duì)象實(shí)例化其自己的單例對(duì)象的副本,從而確保所有對(duì)象都訪問唯一實(shí)例。 總體來說設(shè)計(jì)模式分為三大類: 創(chuàng)建型模式---共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。 結(jié)構(gòu)型模式---共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式...
閱讀 2024·2021-09-04 16:45
閱讀 836·2019-08-30 15:44
閱讀 957·2019-08-30 13:07
閱讀 513·2019-08-29 16:06
閱讀 1434·2019-08-29 13:43
閱讀 1425·2019-08-26 17:00
閱讀 1583·2019-08-26 13:51
閱讀 2355·2019-08-26 11:48