設計模式 外觀模式(Facade)

2021-08-20 04:59:20 字數 1085 閱讀 3134

外觀模式是為了解決類與類之家的依賴關係的,像spring一樣,可以將類和類之間的關係配置到配置檔案中,

而外觀模式就是將他們的關係放在乙個facade類中,降低了類類之間的耦合度,該模式中沒有涉及到介面。

我們以乙個計算機的啟動過程為例:

◆cpu類:

public class cpu 

public void shutdown()

}

◆memory類:

public class memory

public void shutdown()

}

◆disk類:

public class disk

public void shutdown()

}

◆computer類:

public class computer

public void startup()

public void shutdown()

}

◆user類:

public class user

}

◆輸出:

start the computer!

cpu startup!

memory startup!

disk startup!

start computer finished!

begin to close the computer!

cpu shutdown!

memory shutdown!

disk shutdown!

computer closed!

如果我們沒有computer類,那麼,cpu、memory、disk他們之間將會相互持有例項,產生關係。

這樣會造成嚴重的依賴,修改乙個類,可能會帶來其他類的修改,這不是我們想要看到的,有了computer類,他們之間的關係被放在了computer類裡,這樣就起到了解耦的作用,

這就是外觀模式!

設計模式 外觀 Facade 模式

insus.net在去年有寫過一篇 軟體研發公司,外觀設計模式 facade 例中寫得過於簡單與抽象。沒有實質內容似的。這次想再寫乙個。希望能再次加強。為子系統中的一組介面提供乙個統一的高層介面,使客戶使用子系統更容易這是外觀 facade 模式的精髓。在實現之前,可以先看看這篇 web控制項文字框...

設計模式 外觀模式Facade

前言 模式總覽 by xingoo 外觀模式主要是為了為一組介面提供乙個一致的介面。從而使得複雜的子系統與使用者端分離解耦。有點類似家庭常用的一鍵開關,只要按乙個鍵,檯燈臥室客廳的燈都亮了。雖然他們各有各自的開關,但是對外用乙個來控制。1 為複雜系統 提供簡單的介面。2 客戶程式與抽象類的實現部分分...

設計模式 外觀模式(Facade)

外觀模式又稱為門面模式,為一組類似功能的集群,比如類庫 子系統等,提供一致的入口供client呼叫 角色和職責 1.門面 facade computer 外觀模式的核心。它被客戶角色呼叫,它熟悉子系統的功能。內部根據客戶角色的需求預定了幾種功能的組合 2.子系統 packages cpu memor...