Adapter模式
别名
Wrapper
结构
class adapter
object adapter
目的
1, 我们需要利用一个现有的外部类,但该类的接口却与我们现有的系统不一致。
2,或者我们想要创建一个可以很灵活地被利用的类,我们可以先把这个类(adaptee)设计得很详细,然后为它设计一个或多个简单的”pluggable adapter”,这些简单的”pluggable adapter”的接口非常简单,可以很容易在不同的使用环境被裁剪(组合)。
class adapter和object adapter的优缺点
1, 一般来说,object adapter更为灵活一些,而且可以避免多重继承。所以大部分的情况下推荐使用object adapter。
2, class adapter可以创建two-way adapter。two-way adapter可以被使用在adaptee可以被使用的任何环境。
参考资料
《Design Pattern》 Gang-Of-4 1997