代理模式与策略模式的区别!

来源:互联网 发布:ad域环境下windows安装 编辑:程序博客网 时间:2024/05/17 03:13

代理模式与策略模式有一些类似的地方,比如:

策略者可以根据策略不同,执行不同的策略方法;

代理人可以被代理对象的不同,执行不同的被代理人的方法;


似乎用代码很难表达清楚二者有什么区别,那就用一种场景来描述一下二者的区别吧,理解仅供参考!


先说一些人:高层领导,市场部主管,市场部工作人员四个(A,B,C,D);

主管:不做具体的工作,但是他知道每个员工的基本信息

员工:四个工作人员之间业务类似,但又不是很相同,A自己没有事情做,但他业务最熟练的,能代B,C,D这三个人做任何事情!


某天领导视察市场部,把主管叫过来,想了解一下员工信息,就这样领导问谁的信息,主管就把相应员工信息告诉给了领导;

然后呢,领导想看一下员工的工作情况,就让主管找个人过来演示,这样,主管就把A叫过来了,让A就依次把B,C,D的工作内容给领导演示了一下!

主管就是策略者的角色,而A就是一个代理人的角色;

区别:

策略者,即主管,虽然能够管控各个员工,但是他只能做员工的部分事情,比如提供员工个人基本信息

代理者,A,由于代理人跟被代理人是同一级别的,代理人必须要熟悉被代理人的所有业务,BCD能干啥,A就能干啥;


理解很浅薄,哈哈!




1 0
原创粉丝点击