zoukankan      html  css  js  c++  java
  • 桥接模式

    桥接模式:将抽象与实现分离,实现面向接口编程。

    场景:面向接口编程,例如,三层架构中的DAL与BLL的引用可以使用桥接模式实现,修改DAL时,BLL中的逻辑不需要改变

    UML图:

    示例代码:

        public interface IBaseDAL
        {
            void Insert();
        }
        public class UserDAL:IBaseDAL
        {
            public void Insert()
            {
                Console.WriteLine("插入User");
            }
        }
        public class MenuDAL:IBaseDAL
        {
            public void Insert()
            {
                Console.WriteLine("插入Menu");
            }
        }
        public interface IBaseBLL
        {
            IBaseDAL baseDal { get; set; }
            void SetCurrentDal(IBaseDAL BaseDal);
            void InsertOne();
        }
      public class UserBLL : IBaseBLL
        {
            public UserBLL(IBaseDAL BaseDal)
            {
                SetCurrentDal(BaseDal);
            }
    
            public IBaseDAL baseDal { get; set; }
            public void SetCurrentDal(IBaseDAL BaseDal)
            {
                this.baseDal = BaseDal;
            }
    
            public void InsertOne()
            {
                baseDal.Insert();
            }
        }
        public class MenuBLL:IBaseBLL
        {
            public MenuBLL(IBaseDAL BaseDal)
            {
                this.baseDal = BaseDal;
            }
    
            public IBaseDAL baseDal { get; set; }
            public void SetCurrentDal(IBaseDAL BaseDal)
            {
                this.baseDal = BaseDal;
            }
    
            public void InsertOne()
            {
                this.baseDal.Insert();
            }
        }
        class Program
        {
            static void Main(string[] args)
            {
                IBaseBLL user = new UserBLL(new UserDAL());
                user.InsertOne();
    
                IBaseBLL menu = new MenuBLL(new MenuDAL());
                menu.InsertOne();
            }
        }
  • 相关阅读:
    REHの个人主页
    多项式基础学习笔记(2)
    多项式基础学习笔记(1)
    FFT & NTT 学习笔记
    LCT学习笔记
    莫队学习笔记
    SAM 学习笔记
    网络流学习笔记
    关于魔术球贪心做法的证明
    【题解】异或粽子&加强版
  • 原文地址:https://www.cnblogs.com/chenyishi/p/9116143.html
Copyright © 2011-2022 走看看