定义
桥接(Bridge)是用于把抽象化与实现化解耦,使得二者可以独立变化。
理解
本来做一件事需要多方参与,但是这个多方也会各自独立变化,这样的话实现针对多个不同的参与方会存在多种组合。
一种方式是针对不同的组合实现一个继承类结构,缺点:类结构倍数膨胀
换一种方式就是将实现的过程也进行抽象,具体使用的时候需要指定实际的参与方。
举例
比如我们常用的业务接口与实现,通常的过程是请求一个接口,预处理接口返回数据格式。
这个过程有两个参与者,一个是http请求处理器,一个是返回结果处理器。
http请求处理器常见的选择有okhttp,urlconnection等,返回结果处理器根据不同的返回类型有gson,jackson,fastjson等等。
这样的话我就会把业务接口实现的具体处理过程抽象成http请求器请求一个接口,返回string结果,返回结果处理器处理结果得到业务对象。
具体使用业务实现类的时候需要设定具体的http请求处理器,以及返回结果处理器。
这里的抽象化指的是业务接口抽象,实现化指的是业务接口的具体处理过程抽象,这就是抽象化与实现化解耦的含义。
网友评论