策略模式、代理模式

    xiaoxiao2025-01-09  7

    CContext相当于一个容器,容器中存储策略借口,策略借口可以派生多个实体策略, CContext只是简单的装载和调用策略, CContext里没有逻辑。策略会有更大的自主权,运行更多的逻辑。 代理模式:

    看起来代理模式的结构和策略模式类似,都是由一个类来装载接口的一个实例,策略模式是CContext来装载,代理模式是CWangPo来装载。 CContext不是从IStrategy派生,所以不需要实现IStrategy接口函数,而CWangPo是从IKindWomen派生的所以 CWangPo很清楚CPanJinLian和CJiaShi的接口函数。这就是代理,代理人知道被代理人能干的事情即函数,所以代理人可以成为中介。

    代理模式可以很好的将前后端分开,实现了松散耦合。代理模式属于结构型模式。上图仍然是例子中用到的类相关图,并不是代理模式的抽象类图。这样的类图更容易理解代理模式。抽象类图当然具有更高的抽象层次,但不利于理解

    说明:代理和实际执行者派生于共同的接口,代理拥有实际执行者的实例。代理的每一个函数(接口的实现函数),直接调用实际执行者的对应接口函数。

    注意:代理只是简单的装载,然后调用实际执行者的函数。

    转载请注明原文地址: https://ju.6miu.com/read-1295294.html
    最新回复(0)