从意图上来说Facade模式是为子系统中的一组借口提供一个统一接口,而Adapter模式是将一个类的接口转换成客户希望的另外一个接口,使原本由于接口不兼容而不能一期工作的类可以一起工作。
从实现上来看都是通过包装与对象聚集来实现。但两者是不同的包装。看看这两个模式设计的一些不同因素:
| Facade 模式 | Adapter 模式 | |
| 是否存在既有的类? | 是 | 是 |
| 是否必须按某个接口设计? | 否 | 是 |
| 对象需要多态行为? | 否 | 可能 |
| 需要更简单的接口? | 是 | 否 |
Facade 模式中的动机是简化接口。而在Adapter模式中,尽管也是越简单越好,但是设计必须遵循一个已有的接口iou,不能简化热核东西,即使肯呢个存在更简单的接口。
适配器与外观模式解析
本文探讨了软件设计中的两种关键模式——适配器模式和外观模式的区别。前者用于解决接口不兼容的问题,使原本不可合作的类能够协同工作;后者则致力于简化复杂的子系统接口,提供一个统一的高层接口。

被折叠的 条评论
为什么被折叠?



