设计模式之委派模式(Delegate Pattern)深入浅出

学习目标:精简程序逻辑,提升代码的可读性。

内容定位:希望通过对委派模式的学习,让自己写出更加优雅的代码的人群。

委派模式定义:

委派模式(Delegate Pattern)的基本作用是负责任务的调度和分配任务,跟代理模式很像,可以看作是一种特殊情况下的静态代理的全权代理,但是代理模式注重过程,而委派模式注重结果。

不属于GOF 23中设计模式之一

属于行为型模式

 常见应用场景案例:

DispatcherServlet

类名以Delegate结尾的

包含Dispatcher的一般都是委派模式

Spring框架IOC中的BeanDefinitionParserDelegate:Spring提供多种方式(java、xml、注解)配置bean,该类负责分发处理,注入的bean信息最终会被加载为一个BeanDefition对象(描述对象信息)

 应用场景:解决多任务,又不希望把这些任务或者具体的实现让用户知道(不让用户直接交互),创建一个中间类,实现全权代理,达到对用户来说只有一个入口的目的。

简单代码案例

例子:老板需要安排任务给员工,但是又不能直接让老板去了解每个员工的擅长职能,就可以创建一个中间的经理职位负责了解职员的特长,分发任务。

boss类

/** * @ClassName Boss * @Author 周聪 * @Date 2021/1/9 15:48 * @Version 1.0 * @Description 老板发布命令 */ public class Boss { /** * 发任务 * @param command * @param leader */ public void command(String command,Leader leader){ leader.doing(command); } }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwwzsw.html