设计模式三--中介者模式(游戏内各系统的整合)

中介者模式:

            定义一个接口用来封装一群对象的互动行为,中介者通过移除对象之间的引用,来减少它们之间的耦合度,并且能够改变它们之间的互动独立性

优点:

            不会引入太多其它的系统

            系统被依赖的程度也会降低

注意:

           各个游戏系统和玩家界面必须通过中介者类(Mediator)来进行信息交换及沟通,Mediator类会因为担任过多中介者角色而容易出现操作接口爆炸的情况;因此在实现上,我们可以搭配其他设计模式来避免发生这种情况,比如事件系统

                                                         

Colleague:

             拥有一个Mediator属性成员,可以通过它来调用中介者的功能

              

ConcreteColleagueX:

             实现Colleague界面的类,对于单一实现类而言,只会依赖一个Mediator接口

             

             

Mediator(中介者接口):      

            用来管理Colleague对象的接口

            

ConcreteMediator(中介者接口实现类)

           ConcreteMediator实现类中包含所有ConcreteColleague的对象引用

           ConcreteMediator类之间的互动会在ConcreteMediator中发生

              

Main:

            

            

 

结论:

         中介者模式的优点是让系统之间的耦合度降低,提升系统的可维护性。但身为模式中的中介者角色类,也会存在着接口过大的风险,此时必须在配合其他模式来进行优化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值