一、了解外觀模式
1.1 什麼是外觀模式
外觀模式 (facade pattern) 提供了乙個統一的介面,用來訪問子系統中的一群介面。外觀定義了乙個高層介面,讓子系統更容易使用。
想要使用外觀模式,我們需要建立乙個介面來簡化和統一包裝乙個子系統的乙個或多個類。外觀模式允許我們讓客戶和子系統之間避免緊耦合。
1.2 外觀模式的組成結構
1.3 外觀模式 uml **
1.4 外觀模式適用場景
二、外觀模式具體應用
2.1 問題描述
2.2 偽**模擬過程
ads.on(); // 電影未開始之前,放映一會兒廣告
ads.close(); // 電影快開始時,關閉廣告
light.dim(
10); // 將燈光的亮度調到 10%
light.dim(
100); // 電影結束後,將燈光亮度調到 100%
上面這種方式,用**模擬電影院的步驟變得很複雜。我們可以使用外觀模式,把這些複雜的步驟封裝起來,只對外提供簡單的方法。
2.3 外觀模式設計圖
2.4 外觀模式**實現
子系統廣告 advertisement 類
package com.jas.facade;
public
class advertisement
void close()
}
子系統燈光 light 類
package com.jas.facade;
public
class light
}
package com.jas.facade;
public
class ***player
void close()
}
外觀 theate***cade 類
package com.jas.facade;
public
class theate***cade
void watchmovie(string ***)
void endmovie()
}
客戶類
package com.jas.facade;
public
class
theatertestdrive
} /**
* 輸出
* 調整燈光亮度為:10%!
* 調整燈光亮度為:100%!
*/
三、 外觀模式總結
3.1 外觀模式優點
3.2 外觀模式知識點總結
參考文獻
《head first 設計模式》
JAVA設計模式之外觀模式
外觀模式提供統一的介面,用來訪問子系統中的一群介面。外觀定義了乙個高層介面,讓子系統更容易使用。注 乙個子系統可以建立多個外觀類 最少知識原則 只和你的密友交談 也就是要減少物件之間的互動,只留下幾個 密友 這個原則可以避免太多的類耦合在一起,導致修改系統中一部分時會影響到其他部分,這樣這個系統需要...
Java設計模式之外觀模式
當系統擁有多個子系統的時候,為了方便客戶使用,結構上封裝一層統一呼叫的外觀,這種模式叫做外觀模式。需求 開機關機的時候,對功能進行封裝 啟動電腦 按一下電源鍵 啟動cpu 啟動記憶體 啟動硬碟 關閉電腦 按一下電源鍵 關閉硬碟 關閉記憶體 關閉cpu 定義cpu類 記憶體類 硬碟類,分別都具有啟動和...
java設計模式之外觀
想要更好的理解一門技術,請編寫關於它的技術文件或者是部落格!思想不過是他人歸納出來的便於我們去理解,當真正有這種需求的時候也許你都不用思考就能想到使用什麼方法,而不是木訥的使用。例如老闆想為公司的產品打造統一的平台,這就完全符合了外觀設計模式 言歸正傳,我們公司有乙個部門叫做總裁辦,當公司需要辦事的...