外观模式 Facade Pattern

本文探讨了适配器模式和外观模式的区别与联系,分析了两种模式的设计动机及应用场景,帮助读者理解如何选择合适的模式来降低系统的复杂度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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模式则将一个已有的接口转换成一个已有的接口。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值