zoukankan      html  css  js  c++  java
  • 设计模式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
  • 相关阅读:
    [Exception] 当前 TransactionScope 已完成
    C# Lazy<T>(转)
    C# 基础概念之延迟加载
    .Net语言中关于AOP 的实现详解
    DataReader、Table、DataSet和Entity相互转化
    ASP.NET Core 2.0 : 五.服务是如何加载并运行的, Kestrel、配置与环境(转)
    ASP.NET Core 2.0 : 四. _Layout与_ViewStart(转)
    ASP.NET Core 2.0 : 三. 项目结构(转)
    ASP.NET Core 2.0 : 二. 开发环境(转)
    ASP.NET Core 2.0 : 一. 概述(转)
  • 原文地址:https://www.cnblogs.com/bear831204/p/1263536.html
Copyright © 2011-2022 走看看