从王者荣耀看设计模式(代理模式)
一.代理模式
代理模式(Proxy Pattern):给某一个对象提供一个代理,并由代理对象控制对原对象的引用。代理模式是一种对象结构型模式。
模式动机
在某些情况下,一个客户不想或者不能直接引用一个对象,此时可以通过一个称为"代理"的第三者来实现间接引用。代理对象可以在客户端和目标对象之间起到中介作用
-
代理模式的使用场景
根据代理模式的使用目的,常用的代理模式有以下几种类型
1.远程(Remote)代理:为一个位于不同的地址空间的对象提供一个本地的代理对象,这个不同的地址空间可以是在同一台主机中,也可是在另一台主机中,远程代理又叫做大使(Ambassador)
2.虚拟(Virtual)代理: 如果需要创建一个资源消耗较大的对象,先创建一个消耗相对较小的对象来表示,真实对象只在需要时才会被真正创建。
3.Copy-on-Write代理: 它是虚拟代理的一种,把复制(克隆)操作延迟到只有在客户端真正需要时才执行。一般来说,对象的深克隆是一种开销较大的操作,Copy-on-Write代理可以让这个操作延迟,只有对象被用到的时候才被克隆
4.保护(Protect or Access)代理:控制对一个对象的访问,可以给不同的用户提供不同级别的使用权限。
5.缓冲(Cache)代理:为某一个目标操作的结果提供临时的存储空间,以便多个客户端可以共享这些结果。
6.防火墙(Firewall)代理:保护目标不被恶意用户接近。
7.同步化(Synchronization)代理:使几个用户能够同时使用一个对象而没有冲突。
8.智能引用(Smart Reference)代理<

本文探讨了代理模式在王者荣耀游戏中的应用,包括远程代理如何实现远程对象的访问,虚拟代理如何优化资源消耗,以及保护代理如何控制游戏对象的访问权限。代理模式通过提供中介角色降低了系统耦合度,但也可能增加处理延迟。文章通过实例详细解析了这三种代理模式在游戏设计中的具体实现和优缺点。
最低0.47元/天 解锁文章
299





