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

2012年2月2日

摘要: 定义:外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。示例图:如上图,我们的Facade提供了几个简化的接口,将子系统的功能封装起来,这样我们就可以通过调用这几个简化的接口来实现我们想要的功能。但外观模式依然将系统的完成功能暴露出来,我们不仅可以操作简化的接口,也可以直接操作系统底层的高级方法。外观模式允许我们让客户和子系统之间避免紧耦合。因为我们客户代码是针对外观而不是针对子系统编写的。如果当初你的客户代码是针对外观而不是针对子系统编写的,现在你就不需要改变客户代码,只需要修改外观代码即可。此处就不具c++代码的例子啦。参考图书:《Hea 阅读全文

posted @ 2012-02-02 15:07 开源云 阅读(734) 评论(0) 推荐(0) 编辑

摘要: 定义:适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。场景:我们有一只鸭子和一只火鸡,鸭子会嘎嘎叫,而火鸡会咯咯叫,鸭子飞的要远一点,而火鸡只能飞行一小段距离。火鸡和鸭子都会叫,但是他们的叫声不同,接口也不同,飞行的接口相同但是飞行的行为不同。对象适配器:使用对象的组合,以修改的接口包装被适配者。该种做法的优点是被适配者的任何子类都可以搭配着适配器使用。我们分别实现鸭子和火鸡的适配器,鸭子适配器关联了一个鸭子对象,继承自火鸡对象,这样我们可以覆盖火鸡的接口以适应鸭子的行为。同样,火鸡适配器关联了一个火鸡对象,继承自鸭子对象,这样我们就可以覆盖鸭子的 阅读全文

posted @ 2012-02-02 14:18 开源云 阅读(1751) 评论(0) 推荐(0) 编辑