亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

JavaScript設計模式之外觀模式介紹

2019-11-20 13:35:20
字體:
來源:轉載
供稿:網友

外觀模式說明

說明:外觀模式是用于由于子系統或程序組成較復雜而提供的一個高層界面接口,使用客戶端更容易訪問底層的程序或系統接口;

外觀模式是我們經常使用遇到的模式,我們經常涉及到的功能,可能需要涉及到幾個子接口或子系統,而我們的某個功能,可能只需要這向個多個子接口中的一個或幾個組成的順序封裝。如果是業務功能直接對應子接口或子系統的,可能要求開發人員對內部需要相當的了解;你可能需要去了解業務流程是怎么走,他的順序是什么,等等。這即需要開發員了解業務,也使得客戶端編程變得相當的復雜;

這里如果有一層,或是一個類,專門提供好封裝好我們要使用的方法,客戶端功能只需要與這個中間層類交互,中間層類的相應方法有了解業務的相關開發人員組織封裝,那么程序將變得非常的簡單,程序員只需要知道他這個功能所需要對應方法是哪個即可,也不用知道內部的邏輯。

這個中間層類就是我們說的外觀類,這就是外觀模式的思想。

場景實例:

1>. 比如總開關的例子,這個總開關,可以控制家里的大門的一盞燈,大廳的幾盞燈,并控制著家電視機,電冰箱等的供電,你把哪個小按鈕按上“ON”,哪個就有了電,甚至直接發光輸熱,你不必知道,這總開關上的按鈕是怎么出來電的,或是怎么按制到相關電器的,反正直接壓上就來電了。

這些個電燈,電視機等就是我們要使用的接口,小系統;這個總開關就是我們的外觀類,我們直接面對它操作即可。

2>. 還好比一個公司,有好幾個職能部門,老板哪一天需要各方面工作的執行情況了,他就跑去一個個部門內部,問個員工說這個某某事情辦得怎么樣了,如果問對人了能直接給老板答案,要是不是這個人負責的,他還會跟老板說,哦,這事是誰誰負責的,老板還得跑去問下那人,多麻煩。

如果每個職能部門設個主管負責人,老板直接去找它了解情況就可以了,老板也不用關心這個負責人是怎么知道這些的,他只要想了解的這么1,2,3件事情的情況跟進展即可。

實例源碼

現在按第二個實例場景實現源碼:

1. 幾個部門職能類:

部門1 (業務部門):

復制代碼 代碼如下:

function BusinessDept() {
  this.manager = '陳經理'; //負責人
}
BusinessDept.prototype = {
  MonthSales: function() {
    console.log(this.manager + '說:這個月銷售額是xxx');
  },
  NextPlan: function() {
    console.log(this.manager + '說:接下來的計劃是這樣的,xxxx');
  }
}

部門2(研發部門):

復制代碼 代碼如下:

function RDdept() {
  this.manager = '黃經理';
}
RDdept.prototype = {
  progress: function() {
    console.log(this.manager + '說:目前的項目情況跟進展是這樣的xxx');
  },
  deptPlan: function() {
    console.log(this.manager + '說:接下來的部門規劃是這樣的xxx');
  }
}

以上是各部門主管所要回答老板的問題;

接下來建立外觀類,用于組織老板想問的問題;

復制代碼 代碼如下:

function Facade() {
  this.business = new BusinessDept() ;
  this.rddept = new RDdept();
}
Facade.prototype = {
  DeptSituation: function() {
    this.business.MonthSales(); //銷售部經理先說;
    this.rddept.progress();
  },
  deptPlan: function() {
    this.business.NextPlan(); //報告接下來計劃;
    this.rddept.deptPlan();
  }
}

接下來老板把兩位經理叫到面前,開始問話了:

復制代碼 代碼如下:

var facade = new Facade();
console.log('老板問:現在介紹下自己部門的情況?');
facade.DeptSituation();
console.log('老板問:接下來有什么規劃?');
facade.deptPlan();

其他說明

使用外觀模式,可以使得接口或類之間解耦,使得類之間不必產生依賴,不必要使用時得A包含B,或是B一定得包含A,這違反了關閉修改原則,使用中間層外觀類包裝,可以使得接口調用變得簡單,使用子接口或子系統對象調用變得更加自由可組織。

外觀模式經常出現我們的編程中,外觀模式經常使用在架構系統的模式定義中出現,我們的系統要使用第三方的接口服務,也經常再加層外觀層用于組織可用的業務接口;

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品悠悠久久琪琪| www.日本久久久久com.| 日韩电影在线观看中文字幕| 91精品啪在线观看麻豆免费| 91视频国产一区| 亚洲国产私拍精品国模在线观看| 91精品视频大全| 国产精品亚洲综合天堂夜夜| 成人性教育视频在线观看| 久久免费福利视频| 亚洲码在线观看| 国产精品久久久久久久午夜| 欧美日韩精品在线观看| 亚洲国产精品va在线看黑人| 久久精品91久久香蕉加勒比| 91在线色戒在线| 国产视频精品免费播放| 国产精品免费看久久久香蕉| 国产精品丝袜久久久久久不卡| 欧美性生交xxxxxdddd| 欧美精品激情视频| 成人黄色av播放免费| 国产一区二区在线播放| 亚洲娇小xxxx欧美娇小| 日韩大陆欧美高清视频区| 精品国产乱码久久久久久婷婷| 国产精品扒开腿爽爽爽视频| 国产精品久久国产精品99gif| 久久精品国产精品亚洲| 日韩一区二区久久久| 日韩在线观看免费av| 亚洲尤物视频网| 国产精自产拍久久久久久| 国产成人综合亚洲| 日韩在线观看免费网站| 丰满岳妇乱一区二区三区| 欧美高清激情视频| 蜜月aⅴ免费一区二区三区| 欧美性猛交xxxx久久久| 亚洲第一免费播放区| 亚洲最大福利网站| 国产成人精品免费视频| 正在播放国产一区| 97在线视频免费看| 国产在线播放91| 亚洲人成网站在线播| 成人久久久久爱| 性色av一区二区三区| 日韩精品中文字幕久久臀| 亚洲成人网在线观看| 精品久久久国产精品999| 91精品国产91久久久久久最新| 久久激情视频久久| 亚洲一区二区三区777| 欧美亚洲在线观看| 中文日韩在线观看| 日韩在线观看高清| 91在线高清免费观看| 精品自拍视频在线观看| 日本高清视频一区| 色噜噜亚洲精品中文字幕| 狠狠爱在线视频一区| 欧美黄色片免费观看| 国产一区二区色| 国产视频精品一区二区三区| 2021国产精品视频| 青青草99啪国产免费| 欧美日韩亚洲国产一区| 久久精品99久久久久久久久| 亚洲精品丝袜日韩| 久久精品国产清自在天天线| 色综合久综合久久综合久鬼88| 亚洲第一网中文字幕| 在线日韩日本国产亚洲| 欧美国产亚洲视频| 久久国产精品亚洲| 精品久久久久人成| 亚洲免费视频网站| 亚洲欧洲成视频免费观看| 成人在线小视频| 亚洲精品一区二区三区婷婷月| 两个人的视频www国产精品| 国产精品免费电影| 日本一区二区不卡| 国产99久久精品一区二区| 国产成人精品视| 亚洲免费电影在线观看| 日韩高清不卡av| 国产精品中文久久久久久久| 亚洲精品国产精品国自产在线| 国产在线一区二区三区| 欧美洲成人男女午夜视频| 97av在线视频| 国产成人在线亚洲欧美| 色多多国产成人永久免费网站| 日韩高清不卡av| 成人午夜激情网| 欧美制服第一页| 欧美激情一级二级| 日韩欧美视频一区二区三区| 久久精品精品电影网| 日韩久久精品电影| 日韩av在线看| 亚洲国产又黄又爽女人高潮的| 国产精品中文字幕在线观看| 91久久久久久国产精品| 国产香蕉97碰碰久久人人| 久青草国产97香蕉在线视频| 国产成人精品电影久久久| 国产精品久久久久福利| 亚洲一区二区三区sesese| 国产精品日韩在线一区| 欧美巨乳美女视频| 亚洲人成毛片在线播放| 国产精品日韩欧美大师| 日产精品99久久久久久| 日韩高清免费观看| 国产欧美一区二区三区视频| 成人福利网站在线观看| 538国产精品视频一区二区| 久久福利视频导航| 色噜噜国产精品视频一区二区| 欧美午夜电影在线| 亚洲专区国产精品| 亚洲色图av在线| 欧美激情2020午夜免费观看| 91tv亚洲精品香蕉国产一区7ujn| 午夜精品久久久久久久男人的天堂| 久久精品成人动漫| 97久久精品人搡人人玩| 国产精品福利在线| 国产91精品在线播放| 国产精品青草久久久久福利99| 亚洲人成网7777777国产| 欧美一级成年大片在线观看| 亚洲精品在线视频| 啪一啪鲁一鲁2019在线视频| 欧美亚洲成人xxx| 91久久精品美女高潮| 日韩av资源在线播放| 日本精品视频在线观看| 免费av在线一区| 国产91|九色| 欧美性感美女h网站在线观看免费| 欧洲s码亚洲m码精品一区| www日韩中文字幕在线看| 亚洲精品久久久久久久久| 97久久精品人人澡人人爽缅北| 日韩精品在线观看网站| 欧美激情国产精品| 第一福利永久视频精品| 亚洲欧洲在线免费| 日韩风俗一区 二区| 热久久这里只有精品| 日韩免费高清在线观看| 久久精品精品电影网| 国产精品无av码在线观看| 91精品久久久久久久久不口人| 色综合91久久精品中文字幕| 国产精品视频免费在线观看| 国产成人拍精品视频午夜网站| 日韩电影在线观看中文字幕| 国产亚洲成av人片在线观看桃| 欧美插天视频在线播放|