日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

外观模式讲解

發布時間:2024/4/13 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 外观模式讲解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們來學一下外觀模式,外觀模式又叫門面模式,提供了一個統一的接口,用來訪問子系統的一群接口,那外觀模式定義了一個高層接口,讓子系統更容易使用,類型是結構型的,那這里面有幾個角色,一個是外觀角色,他了解子系統所有的方法,外觀角色他也有自己的方法,客戶端他通過調用外觀角色的方法呢,來調用子系統的功能,那這里面還有個關鍵字,子系統,那子系統可以是一個,可以是多個,子系統按照不同的維度,分成不同的處理模塊,并不是單獨的類,那子系統形成一個集合,為外觀模式的外觀類,提供子系統的服務,那么接著看一下,外觀模式的應用場景,當子系統越來越復雜,這個時候增加外觀模式呢,能提供簡單調用的接口,還有當我們構建多層系統結構的時候,利用外觀對象作為每層的入口,簡化層間調用,那一會我們coding的時候,領著大家來體會,還是很容易理解的

那我們看一下外觀模式的優點是什么呢,簡化了調用過程,無需深入的了解子系統,防止帶來風險,這里所說的防止帶來風險,也非常好理解,對于某個功能我們只要集成到一起就可以了,無需修改子系統,不修改它也就不會帶來風險,減少系統以來,松散耦合,外觀模式松散了客戶端和子系統的耦合關系,客戶端不與子系統直接交流,客戶端和外觀對象進行交流,讓子系統內部的模塊很容易擴展和維護,通過使用外觀模式,幫我們更好地劃分訪問層次,那有些方法呢,是系統外部的,有些方法呢,是系統內部的,我們把需要暴露給外部的功能集中到外觀類上,這樣既方便客戶端調用,也能很好隱藏內部細節,同時外觀模式符合迪米特法則,即最少知道原則,客戶端不需要了解子系統內部的實現,也不需要和眾多子系統模塊進行交互,只要和外觀類交互就可以了

外觀模式的缺點是什么呢,幫我們增加子系統,擴展子系統行為的時候,容易引入風險,另外在我們增加子系統,和擴展子系統行為的時候,是不符合開閉原則的

我們看一下和外觀模式相關的設計模式,首先外觀模式和中介者模式,那在這里我們還沒有講中介者模式,但是也先介紹一下,后續回來可以看一下,那他們兩個本質上的區別呢,說外觀模式關注的是外界子系統之間的交互,而中介者模式呢,關注的是子系統內部的交互,另外是外觀模式和單例模式,通常我們可以把外部模式中的外觀對象做成單例模式的結合使用,還有外觀模式和抽象工廠模式,那外觀類可以通過抽象工廠獲取子系統的例,這樣呢子系統可以將內部外觀類進行屏蔽,這個也是設計模式結合使用的一種方式

接下來我們會一起來coding,來看一下UML,還有外觀模式相關的源碼解析

?

總結

以上是生活随笔為你收集整理的外观模式讲解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。