美文网首页javaalready
委派模式的使用

委派模式的使用

作者: 文景大大 | 来源:发表于2022-06-23 14:15 被阅读0次

一、模式介绍

委派模式负责任务的分配和调用,是一种特殊的静态代理模式,可以理解为全权代理模式,代理模式注重过程,委派模式注重结果。

在现实工作中,我们员工分为设计师、程序员、运维人员等等,大家负责不同种类的工作,对于公司领导来说,想要弄清楚所有人的工作种类和下达具体的工作任务是非常繁琐的,这将会导致领导和员工的强耦合,因此,我们需要将所有员工划分为不同的团队,每个团队设置一个项目经理,由项目经理来替领导管理员工和指派具体工作。

public interface IEmployee {
    void doTask(String task);
}
@Slf4j
public class Designer implements IEmployee{
    @Override
    public void doTask(String task) {
        log.info("执行{}任务", task);
    }
}
@Slf4j
public class Coder implements IEmployee{
    @Override
    public void doTask(String task) {
        log.info("执行{}任务", task);
    }
}
@Slf4j
public class Manager implements IEmployee{
    private Map<String,IEmployee> employeeMap = new HashMap<>();

    /**
     * 项目经理管理每个员工的工作类别
     */
    public Manager() {
        employeeMap.put("design", new Designer());
        employeeMap.put("code", new Coder());
    }

    @Override
    public void doTask(String task) {
        if(!employeeMap.containsKey(task)){
            log.error("无法完成该类型任务!");
            return;
        }
        employeeMap.get(task).doTask(task);
    }
}
public class Main {
    public static void main(String[] args) {
        Manager jack = new Manager();
        jack.doTask("design");
        jack.doTask("code");
    }
}

二、使用案例

可以看到,委派模式比较简单,和静态代理模式极其相似,在框架中也多有使用场景:

  • JDK类加载的双亲委派模型;

三、模式总结

3.1 优点

  • 可以将大型任务拆解细化,然后方便管理子任务的情况,提升效率;

3.2 缺点

  • 如果任务特别复杂,可能会涉及多种委派,代码可读性降低;

相关文章

  • 委派模式的使用

    一、模式介绍 委派模式负责任务的分配和调用,是一种特殊的静态代理模式,可以理解为全权代理模式,代理模式注重过程,委...

  • 源码学习之设计模式(委托模式)

    今天要说的是委派模式。 使用起来 和代理模式有点像,在《设计模式之禅》中讲到代理模式就是委派模式,对于这个观点我不...

  • 委派模式 java

    委派模式其实并不是常用的二十三种设计模式,它是代理模式和策略模式的组合使用。 举个例子:比如说,boss将任务委派...

  • 委派模式

    委派模式 委派模式不属于GOF23种设计模式中。委派模式(DelegatePattern)的基本作用就是负责任务的...

  • 2021-07-26委派模式与策略模式

    委派模式—用户调用委派对象,由委派对象将任务进行分配。(委派对象选择调用具体的对象去处理任务) 定义 委派模式(D...

  • 设计模式-委派模式

    设计模式-委派模式 定义 委派模式(Delegate Pattern)又叫委托模式,是一种面向对象的设计模式,允许...

  • 设计模式之“委派模式”?!

    今天想要分享的是设计模式中的委派模式,说他是设计模式,但并不是23种设计模式之中的。 委派模式(Delegate)...

  • 经典设计模式之策略模式【如何重构聚合支付平台,对接【支付宝,微信

    为什么要使用设计模式重构代码 什么是策略模式 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给...

  • 委派模式

    特点1、类似于中介的功能(委托机制)2、持有被委托人的引用 (工厂模式不需要)3、 不关心过程,只关心结果两个角色...

  • 委派模式

    委派模式得基本作用就是负责任务得调用和分配任务,跟代理模式很像,可以看作是一种特殊情况下得静态代理得全权代理,但是...

网友评论

    本文标题:委派模式的使用

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