外观模式 Facade Pattern

definition


Provide a unified interface to a set of interfaces in a subsystem. Façade defines a higher-level interface that makes the subsystem easier to use.

Frequency of use:   high

为子系统中的一组接口提供一个一致的界面,它为子系统中的一组接口提供一个统一的高层接口,使得子系统更容易使用。



UML图







代码参考:http://www.iteye.com/topic/327449



adapter和facade模式区别:

adapter模式和Facade模式都是包装,用对象将遗留系统包装起来使其更容易使用。

有些人认为两个设计模式的另一个差异是:Facade隐藏了多了类,而Adapter只隐藏了一个类。这种说法经常是成立的,但不是模式本身的特点,将Facade置于一个非常复杂的对象之前,而将adapter来包装几个共同实现所需功能的小对象,也是不可能的。 

从动机出发,或许会更清晰一些
adapter是为了重用与期望接口不一致但的确可以被重用的代码。
Facade模式,是为了减小模块间的耦合而在更高层次上定义的接口,通常提供以该模块较粗粒度的入口

结论:Facade模式简化了接口,而Adapter模式则将一个已有的接口转换成一个已有的接口。

猜你喜欢

转载自eason8.iteye.com/blog/1246922
今日推荐