美文网首页
学习笔记:设计模式之桥接模式

学习笔记:设计模式之桥接模式

作者: 大力papa | 来源:发表于2020-08-18 17:01 被阅读0次

本文仅供学习交流使用,侵权必删。
不作商业用途,转载请注明出处。

WHAT 什么是桥接

桥接UML.png

桥接模式是一种结构型的设计模式。桥接模式的核心是将抽象部分与实现部分解耦,使它们可以独立变化。我的理解是一个类有多个独立的维度,我们可以把它们抽象出来通过组合方式进行功能扩展。通过组合方式替代继承方式,防止了类爆炸。

WHY 为什么使用桥接

  1. 提高扩展性,符合开闭原则
  2. 有效减少类个数,能一定程度降低代码复杂度

HOW 桥接的实现(JAVA)

场景:前段时间开发一个融资申请的功能刚好用上了桥接模式。该功能主要面向是企业的上游供应商和下游经销商,面向不同的业务类型客户融资申请有各自的具体逻辑。而企业的融资业务是与各个银行合作,每间银行各自的申请业务逻辑各不相同。在这个业务场景下采取桥接模式,不同业务类型的处理逻辑是一个独立的维度,各银行申请逻辑又是一个独立维度,将两个维度通过组合方式实现不同融资申请功能代码。

  • 抽象类
/**
 * 商户类型抽象类
 */
public abstract class AbstractApply {

    protected IBankApplyService bankApplyService;

    public abstract void apply();
}



/**
 * 经销商类型处理
 */
public class DistributorApply extends AbstractApply {


    public DistributorApply(IBankApplyService bankApplyService) {
        this.bankApplyService = bankApplyService;
    }

    @Override
    public void apply() {
        System.out.println("DistributorApply");
        bankApplyService.apply();
    }
}


/**
 * 供应商类型处理
 */
public class SupplierApply extends AbstractApply {

    public SupplierApply(IBankApplyService bankApplyService) {
        this.bankApplyService = bankApplyService;
    }

    @Override
    public void apply() {
        System.out.println("SupplierApply");
        bankApplyService.apply();
    }
}
  • 实现类
/**
 * 申请接口类
 */
public interface IBankApplyService {

    void apply();
}


/**
 * 交行申请处理
 */
public class CommbankApplyServiceImpl implements IBankApplyService{
    @Override
    public void apply() {
        System.out.println("CommbankApply");
    }
}


/**
 * 网商申请处理
 */
public class MybankApplyServiceImpl implements IBankApplyService {
    @Override
    public void apply() {
        System.out.println("MybankApply");
    }
}


/**
 * 微众申请处理
 */
public class WebankApplyServiceImpl implements IBankApplyService {
    @Override
    public void apply() {
        System.out.println("WebankApply");
    }
}

持续更新...

相关文章

  • Decorator 装饰模式

    设计原则学习笔记 设计模式学习笔记 作用 动态的给一系列类添加新的属性以及操作。装饰模式和桥接模式有点像,桥接模...

  • java/android 设计模式学习笔记(8)---桥接模式

    java/android 设计模式学习笔记(8)---桥接模式 【备注】只用于个人收藏

  • 学习笔记:设计模式之桥接模式

    本文仅供学习交流使用,侵权必删。不作商业用途,转载请注明出处。 WHAT 什么是桥接 桥接模式是一种结构型的设计模...

  • 设计模式之桥接模式

    设计模式之桥接模式 1. 模式定义 桥接模式又称柄体模式或接口模式,它是一种结构性模式。桥接模式将抽象部分与实现部...

  • 桥接模式

    慕课网笔记 —桥接模式(Bridge Pattern) 维基百科 桥接模式是软件设计模式中最复杂的模式之一,它把事...

  • Java设计模式——桥接模式

    Java设计模式之桥接模式 回顾 上一期分享了适配器模式,主要为了实现解耦 桥接模式 简介 桥接模式是对象的结构模...

  • 设计模式-桥接模式

    设计模式-桥接模式 定义 桥接模式(Bridge Pattern)也称为桥梁模式、接口(Interface)模式或...

  • 手撸golang 结构型设计模式 桥接模式

    手撸golang 结构型设计模式 桥接模式 缘起 最近复习设计模式拜读谭勇德的<<设计模式就该这样学>>本系列笔记...

  • 桥接模式

    设计模式:桥接模式(Bridge)

  • 设计模式之桥接模式

    设计模式之桥接模式 Intro 桥接模式(Bridge),将抽象部分与它的实现部分分离,使得它们都可以独立地变化。...

网友评论

      本文标题:学习笔记:设计模式之桥接模式

      本文链接:https://www.haomeiwen.com/subject/qdbqjktx.html