设计模式——适配器模式
一、概念:将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
二、UML示意图:
Target:是客户所期待的接口,目标可以使具体的或者抽象的类,也可以是接口。
Adapter:通过在内部包装一个adaptee对象,把源接口转换成目标接口。
Adaptee:是需要被适配的类。
三、优缺点
优点:
- 当有了新的需要被适配的Adaptee类的时候,只需要新增能够适配这个Adaptee的Adapter类就好,不需要修改源代码,符合开闭原则。
- 客户端针对Target类进行编程,不需要知道Adapter和Adaptee的细节,松耦合。
- 当需要兼容第三方接口而又不想修改本系统接口时很方便,只要增加一个适配器类来把第三方的接口转换成本系统兼容的接口就好。
缺点:
- 过度的使用适配器会让系统显得比较凌乱。
四、不要过度使用适配器模式
模式应当适度使用,有句话说“过度使用设计模式不如不用”。适配器模式应该在碰到了无法或者不想改变系统原有设计和代码的情况下却要兼容新的接口时才使用。