设计模式Bridge(桥接模式)

Bridge模式定义:实现数据对象和对数据操作的分离。
例如有Insert和Update两种操作,有两个表Table1和Table2,这时为了对两个表分别进行Insert和Update操作,我们可能会写4个类:Table1Insert、Table1Update、Table2Insert和Table2Update。这时如果要新加一种Delete操作,又要多写两个类,当操作种类越多时,即使表的数量不变,类的个数也会急剧增加,一旦表的数量也要增加,将产生不可想象的递增量。

Bridge模式正是为了解决这个问题,如下例:
首先声明一个抽象的数据操作的接口:
public interface Operator
        {
            
void Work(string obj);
        }
接着有两个具体的操作实现这个接口:
Code
接下来是一个抽象的数据对象,在它里面提供对数据操作接口的访问:
Code
下面由具体的数据对象分别实现它:
Code
接下来就可以对不同的数据对象进行不同的操作了,只需要为同一个数据对象通过SetOperator(Operator newOperator)设置不同的操作,就可以完成不同的任务了,很方便切换:
Code
原文地址:https://www.cnblogs.com/bear831204/p/1263536.html