cocos2dx中常见设计模式

 

1、单例设计模式:导演类

2、观察者模式:

     被观察者(EventDispatcher)含有一个数组(std::vector),里边存放了所有观察者(EventListener监听者)的引用,在被观察者的状态发生改变的时候,通过调用观察者的函数来通知观察者(dispatchEventToListeners),实现了信息的传递。  事件监听器:就是采用了观察者模式,当一个事件被触发的时候,所有监听它的对象都将收到通知

3、工厂模式

create函数创建对象

工厂就是用来创建其他类对象的类,我们把这个创建其他类对象的类叫做工厂类,而这些被创建的对象叫做产品,所以这种模式才叫做工厂模式

4、管理者模式

管理类是用来管理一组相关对象的类,他提供了访问对象的接口,如果这么说比较抽象的话,我们来看下cocos2dx中都有哪些类是管理类你就会很明白了,例如TextureCache, SpriteFrameCache, AnimationCache,这些类都是管理类。

就拿SpriteFrame来说,这个类管理了对象spriteframe,我们通过提供一个键来获得对应的值,像AnimationCache,TextureCache不都是这样吗,用一个键来获取对应的值。所以这些类都叫做管理类,因为他们管理着一组相关的对象。之所以使用管理者模式一个是因为为访问相关对象提供了统一的接口,另一个就是缓存游戏用到的资源,提高游戏的性能,以上的三个类不正是这样的作用吗,以下是实现这个模式的代码。

5、外观模式——————音频

你可能感兴趣的:(cocos2dx收藏)