国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

設(shè)計模式-外觀模式

這篇具有很好參考價值的文章主要介紹了設(shè)計模式-外觀模式。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

外觀模式:

? ? ?外觀模式(Facade Pattern)是屬于結(jié)構(gòu)型的設(shè)計模式,它的主要目的是為子系統(tǒng)中的一組接口提供一個統(tǒng)一且更簡單的接口,還簡化了客戶端調(diào)用子系統(tǒng)功能的過程。

角色和結(jié)構(gòu):

1 Facade(外觀類)

  • Facade 類提供了對子系統(tǒng)的簡潔、一致的接口。它包含了子系統(tǒng)中的多個模塊或組件的方法,并在內(nèi)部協(xié)調(diào)這些方法的調(diào)用。
  • 客戶端通常只與 Facade 類交互,而不是直接與子系統(tǒng)內(nèi)的各個類交互。

2 Subsystem Classes(子系統(tǒng)類)

  • 子系統(tǒng)包含了一系列相關(guān)的類,它們共同實現(xiàn)了一組功能。這些類可能有復(fù)雜的依賴關(guān)系,或者客戶端直接調(diào)用會比較復(fù)雜。
  • 子系統(tǒng)類不直接與 Facade 類通信,而是由 Facade 在需要時調(diào)用它們。

工作原理:

  • Facade 為子系統(tǒng)定義了接口,它封裝了子系統(tǒng)中的復(fù)雜性,對外提供簡單易用的功能。
  • 當客戶端通過 Facade 調(diào)用某個功能時,F(xiàn)acade 負責(zé)處理請求,包括協(xié)調(diào)子系統(tǒng)中的多個對象執(zhí)行操作,轉(zhuǎn)換和傳遞數(shù)據(jù)等。

示例代碼:

外觀模式示例代碼如下:

// 子系統(tǒng)類
class SubsystemA {
    public void operationA() {
        // 實現(xiàn)子系統(tǒng)A的操作...
    }
}

class SubsystemB {
    public void operationB() {
        // 實現(xiàn)子系統(tǒng)B的操作...
    }
}

class SubsystemC {
    public void operationC() {
        // 實現(xiàn)子系統(tǒng)C的操作...
    }
}

// 外觀類
class Facade {
    private SubsystemA a;
    private SubsystemB b;
    private SubsystemC c;

    public Facade() {
        this.a = new SubsystemA();
        this.b = new SubsystemB();
        this.c = new SubsystemC();
    }

    public void performComplexOperation() {
        // 協(xié)調(diào)并執(zhí)行子系統(tǒng)的方法
        a.operationA();
        b.operationB();
        c.operationC();
    }
}

// 客戶端代碼
public class Client {
    public static void main(String[] args) {
        Facade facade = new Facade();

        // 客戶端只需要調(diào)用 Facade 提供的簡單方法即可完成復(fù)雜的任務(wù)
        facade.performComplexOperation();
    }
}

說明:在上面代碼中SubsystemASubsystemB?和?SubsystemC?是子系統(tǒng)中的類,而?Facade?類負責(zé)整合它們的功能并通過?performComplexOperation()?方法提供給客戶端簡單直觀的調(diào)用方式。

外觀模式的優(yōu)點:

  • 降低復(fù)雜性:隱藏了子系統(tǒng)的復(fù)雜性,使客戶端不用了解子系統(tǒng)的實現(xiàn)細節(jié)。
  • 減少耦合:客戶端只需與 Facade 類進行交互,減少了客戶端與子系統(tǒng)間的耦合度。
  • 提高靈活性:修改子系統(tǒng)內(nèi)部實現(xiàn)時,只要 Facade 的接口保持不變,就不會影響到使用 Facade 的客戶端代碼。

外觀模式的應(yīng)用場景:

  • 對于復(fù)雜功能的簡化訪問,例如復(fù)雜的操作系統(tǒng)的api或者第三方API等。
  • 當需要向原有系統(tǒng)擴展時,只增加新接口以適應(yīng)新的需求時。

?文章來源地址http://www.zghlxwxcb.cn/news/detail-805090.html

到了這里,關(guān)于設(shè)計模式-外觀模式的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 設(shè)計模式之外觀模式

    設(shè)計模式之外觀模式

    組建一個家庭影院: DVD 播放器、投影儀、自動屏幕、環(huán)繞立體聲、爆米花機,要求完成使用家庭影院的功能,其過程為:直接用遙控器: 統(tǒng)籌各設(shè)備開關(guān) 開爆米花機 放下屏幕 開投影儀 開音響 開 DVD,選 dvd 去拿爆米花 調(diào)暗燈光 播放 觀影結(jié)束后,關(guān)閉各種設(shè)備 在 ClientTest

    2024年02月09日
    瀏覽(30)
  • 設(shè)計模式-外觀模式

    ? ? ?外觀模式(Facade Pattern)是屬于結(jié)構(gòu)型的設(shè)計模式,它的主要目的是為子系統(tǒng)中的一組接口提供一個統(tǒng)一且更簡單的接口,還簡化了客戶端調(diào)用子系統(tǒng)功能的過程。 1 Facade(外觀類) : Facade 類提供了對子系統(tǒng)的簡潔、一致的接口。它包含了子系統(tǒng)中的多個模塊或組件的

    2024年01月19日
    瀏覽(39)
  • js設(shè)計模式:外觀模式

    js設(shè)計模式:外觀模式

    將復(fù)雜的功能封裝成可以簡單調(diào)用的方法,無需知道內(nèi)部的具體邏輯,只需要知道怎么去使用 類似于一把槍,你可以不知道內(nèi)部的槍機,擊發(fā)機,復(fù)進簧,槍管,導(dǎo)氣裝置,彈夾是怎么合作配合完成發(fā)射和自動填彈,你只需要知道你扣動扳機就能完成這一系列復(fù)雜的操作,而那個扳機就是

    2024年02月22日
    瀏覽(20)
  • 設(shè)計模式之外觀模式筆記

    設(shè)計模式之外觀模式筆記

    記錄下學(xué)習(xí)設(shè)計模式-外觀模式的寫法。JDK使用版本為1.8版本。 意圖 :為子系統(tǒng)中的一組接口提供一個一致的界面,F(xiàn)acade模式定義了一個高層接口,這個接口使得這一子系統(tǒng)更加容易使用。 結(jié)構(gòu) : 其中: Facade知道哪些子系統(tǒng)類負責(zé)處理請求;將客戶的請求代理給適合的子系統(tǒng)

    2024年02月11日
    瀏覽(30)
  • Java設(shè)計模式-外觀模式

    在軟件開發(fā)過程中,經(jīng)常會遇到復(fù)雜的系統(tǒng)和龐大的類庫。這些系統(tǒng)往往包含了大量的類和子系統(tǒng),給開發(fā)人員帶來了挑戰(zhàn)。為了簡化接口設(shè)計和提高系統(tǒng)的可用性,設(shè)計模式提供了一種名為外觀模式的解決方案。 外觀模式是一種結(jié)構(gòu)型設(shè)計模式,旨在為復(fù)雜系統(tǒng)提供一個簡

    2024年02月05日
    瀏覽(25)
  • 設(shè)計模式之代理模式與外觀模式

    設(shè)計模式之代理模式與外觀模式

    目錄 代理模式 簡介 優(yōu)缺點 角色職責(zé) 實現(xiàn) 運用場景 外觀模式 簡介 角色職責(zé) 優(yōu)缺點 實現(xiàn) 使用場景 由于某些原因需要給某對象提供一個代理以控制對該對象的訪問。這時,訪問對象不適合或者不能直接引用目標對象,代理對象作為訪問對象和目標對象之間的中介 優(yōu)點: ?

    2024年02月10日
    瀏覽(27)
  • 設(shè)計模式結(jié)構(gòu)型——外觀模式

    設(shè)計模式結(jié)構(gòu)型——外觀模式

    目錄 什么是外觀模式 外觀模式的實現(xiàn) 外觀模式角色 外觀模式舉例 外觀模式類圖 外觀模式代碼實現(xiàn) 外觀模式的特點 優(yōu)點 缺點 注意事項 應(yīng)用場景 總結(jié) ????????外觀模式(Facade Pattern):又叫作門面模式,歸屬于結(jié)構(gòu)型模式。外觀模式定義了提供了定義了一個統(tǒng)一的高層

    2024年02月16日
    瀏覽(26)
  • 《設(shè)計模式的藝術(shù)》筆記 - 外觀模式

    ? ? ? ? 外觀模式中外部與一個子系統(tǒng)的通信通過一個統(tǒng)一的外觀角色進行,為子系統(tǒng)中的一組接口提供一個一致的入口。外觀模式定義了一個高層接口,這個接口使得子系統(tǒng)更加容易使用。外觀模式又稱為門面模式,它是一種對象結(jié)構(gòu)型模式。 myclass.h myclass.cpp main.cpp ? ?

    2024年01月19日
    瀏覽(25)
  • C++ 設(shè)計模式之外觀模式

    C++ 設(shè)計模式之外觀模式

    【聲明】本題目來源于卡碼網(wǎng)(題目頁面 (kamacoder.com)) 【提示:如果不想看文字介紹,可以直接跳轉(zhuǎn)到C++編碼部分】 【簡介】什么是外觀模式 ????????外觀模式 Facade Pattern , 也被稱為“??模式”,是?種 結(jié)構(gòu)型設(shè)計模式 ,外觀模式定義了?個?層接?,這個接?使得

    2024年01月17日
    瀏覽(25)
  • 結(jié)構(gòu)型設(shè)計模式——外觀模式

    結(jié)構(gòu)型設(shè)計模式——外觀模式

    有句話說這個世界就是個草臺班子,只不過排面做的好看而已,里面都是一包糠。這句話來形容外觀模式非常準確,外觀模式又叫門面模式,顧名思義一個系統(tǒng)我不管你里面有多復(fù)雜有多少屎山代碼,我只要求你提供的接口好用,簡單就行,即門面要有排面!用專業(yè)的話講是

    2024年01月22日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包