程序不是看出来的,是写出来的!思想不是想出来的,是敲出来的!欢迎加群298136329交流技术问题!

设计模式——防御式编程模式

设计模式——防御式编程模式
防御式编程模式,这个是在浏览其他博客的时候看到的,这里大体说一下它的意思,关于这方面的文章自行百度吧。其实防御式编程模式并不是一种编程模式,只是说我们写代码的时候为了要保证程序的健壮性要采取一定的防御措施,我们写代码通常都是带有一定的假定的,设想一下如果用户输入了非法的值,我们的假定就会打破,程序就会出现bug,所以为了防止程序出错,我们需要采取一定的措施来避免这种不确定的操作导致的bug,这个就…

设计模式——外观模式

设计模式——外观模式
仍然先来说明一下何为外观模式,一个复杂的系统包含很多子系统,为了使用这个复杂的系统,我们定义一个统一的接口来使用这个复杂的系统。当用户操作的时候只要调用我们提供的这个接口就好了,至于底层的这个复杂的系统,用户不必关系是如何工作的。这里列举一个网上的例子,编译系统是一个复杂的系统,包括什么词法分析,语法分析,语义分析等等,用户在编译程序的时候不需要了解这个复杂的系统到底是怎么编译的,只要使用统一的接…

设计模式——管理者模式

设计模式——管理者模式
首先明确一个问题,什么是管理者模式,管理类是用来管理一组相关对象的类,他提供了访问对象的接口,如果这么说比较抽象的话,我们来看下cocos2dx中都有哪些类是管理类你就会很明白了,例如TextureCache, SpriteFrameCache, AnimationCache,这些类都是管理类。就拿SpriteFrame来说,这个类管理了对象spriteframe,我们通过提供一个键来获得对应的值…

设计模式——工厂模式

设计模式——工厂模式
cocos2dx中也有工厂模式,何为工厂模式,顾名思义就是用来产生产品的,工厂就是用来创建其他类对象的类,我们把这个创建其他类对象的类叫做工厂类,而这些被创建的对象叫做产品,所以这种模式才叫做工厂模式,是不是很形象。我们从纯c++的角度来看一下如何使用工厂模式。工厂模式又分为简单工厂模式、工厂方法模式、抽象工厂模式,先来看一下简单工厂模式如何实现。简单工厂模式:当在程序中创建对象的时候少不了new…

设计模式——二段构建模式

设计模式——二段构建模式
设计模式在程序设计中会经常用到,也许你从来没有留意过设计模式,其实你却一直在使用设计模式!cocos2dx中有不少的设计模式,所以从本篇博客开始探讨一下cocos2dx中的设计模式,看看引擎都使用了哪些设计模式,我们今后写代码要怎样使用某种设计模式。本人菜鸟一枚,如果有任何错误还请留言指教,互相探讨。大家最熟悉的是单例设计模式了吧,在cocos2dx中单例真是不少啊,我们的大导演不就是单例吗,单例…

单例设计模式

单例设计模式
在cocos2dx中存在不少的单例,虽然单例的设计模式引起不少弊端,大家可以看这篇文章,Cocos2d-x设计模式发掘之一:单例模式。我们使用单例目的就是获得全局的唯一一个对象,来做一些事情,那么什么时候用单例什么时候不用单例呢。我觉得一个是从道理上来说,单例在全局应该是唯一的,比如cocos2dx中的导演类,一个游戏应该只有一个导演去完成一些功能,还有就是当你需要在一个类中初始化一个需要设定为单…

CCNotificationCenter事件监听器

CCNotificationCenter事件监听器
CCNotificationCenter事件监听器也好,观察者模式也罢,这个东西的用处就是用在俩个类通信的时候,一个类用来发送消息,一个类用来接收消息。其实这个东西的用处是非常大的,举个例子吧。比如一片草地,会在不同的季节反应出不同的状态,春天的时候草长了出来,都是绿的,夏天的时候草长的更高了,秋天的时候又会变颜色,在四季更换的不同状态下,草的颜色也会跟着发生改变,也就是会对应不同的状态,这个天气…