设计模式之Facade(外观)模式
我們通過一個簡單的開關電腦模擬程序來說明Facade模式(外觀模式)
CPU類
public class Cpu
{
?public void start()
?{
??system.out.print("CPU啟動");
?}
?public void stop()
?{
??system.out.print("CPU關閉");
?}
}
?
電腦風扇類
public class Fan
{
?public void start()
?{
??system.out.print("風扇啟動");
?}
?public void stop()
?{
??system.out.print("風扇關閉");
?}
}
?
電腦外觀類
public class ComputerFacade
{
?Cpu cpu = null;
?Fan fan = null;
?public ComputerFacade()
?{
??cpu = new Cpu();
??fan = new Fan();
?}
?public void open()
?{
??cpu.start();
??fan.start();?
?}
?public void close()
?{
??cpu.stop();
??fan.stop();?
?}
}
可以想象,開電腦的時候我們不管Cpu如何啟動,風扇如何啟動,只要按一下開關就行了。
?
來看一下外觀模式的定義
將原來分散在源碼中的類/結構及方法重新組合,形成新的、統一的接口,供上層應用使用。這在某種意義上與Adapter及Proxy有類似之處,但是,Proxy(代理)注重在為Client-Subject提供一個訪問的中間層,如CORBA可為應用程序提供透明訪問支持,使應用程序無需去考慮平臺及網絡造成的差異及其它諸多技術細節;Adapter(適配器)注重對接口的轉換與調整;而Facade所面對的往往是多個類或其它程序單元,通過重新組合各類及程序單元,對外提供統一的接口/界面。
?
參考地址:http://baike.baidu.com/view/2960561.htm
轉載于:https://blog.51cto.com/woshixy/1012070
總結
以上是生活随笔為你收集整理的设计模式之Facade(外观)模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【cocos2d-x】瓷砖地图(Tile
- 下一篇: Java 连接池的工作原理