博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

c++设计模式:外观模式(Facade Pattern)

Posted on 2012-02-02 15:07  开源云  阅读(746)  评论(0)    收藏  举报

定义:外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。

示例图:

如上图,我们的Facade提供了几个简化的接口,将子系统的功能封装起来,这样我们就可以通过调用这几个简化的接口来实现我们想要的功能。但外观模式依然将系统的完成功能暴露出来,我们不仅可以操作简化的接口,也可以直接操作系统底层的高级方法。

外观模式允许我们让客户和子系统之间避免紧耦合。因为我们客户代码是针对外观而不是针对子系统编写的。如果当初你的客户代码是针对外观而不是针对子系统编写的,现在你就不需要改变客户代码,只需要修改外观代码即可。

 

此处就不具c++代码的例子啦。

 

参考图书:《Head First 设计模式》