一旦设备接受了连接请求,对端立即会收到一个状态为GKPeerStateConnected 的Session 状态改变通知,然后这个设备会加到玩家列表中。要测试这个 app,你需要运行两个 app 的拷贝:一个是服务器,一个是客户端。最简单的办法是用模拟器作为服务器,而用一台物理设备作为客户端。如果你没有开发者账号,你将无法在真机上进行调试,这样你可能想在同一个机器上运行两个模拟器。这不是不可以,但...
分类:
移动开发 时间:
2014-06-20 12:39:36
阅读次数:
392
组合 、委托
基本常识:策略模式和状态模式是双胞胎,在出生时才分开。
一般来说,我们把策略模式想成是除了继承之外的一种弹性替代方案。
什么时候用接口? or 抽象类?
当实现接口的类中,重复代码太多时,可考虑继承 。
OO模式:
状态模式--允许对象在内部状态改变时改变它的作为,对象看起来好像修改了它的类
如: 因为一个状态对应一个类, 每个类中的方法名相同,但实现不同...
分类:
其他好文 时间:
2014-06-05 03:52:54
阅读次数:
209
定义
当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。
状态模式的核心是封装,状态的变更引起了行为的变更,从外部看起来就好像这个对象对应的类发生了改变一样。通用类图如下:
1.State——抽象状态角色
接口或者抽象类,负责对象状态定义,并且封装角色以实现状态切换
2.ConcreteState——具体状态角色...
分类:
其他好文 时间:
2014-06-03 00:45:39
阅读次数:
360
《设计模式》对状态模式的定义:允许一个对象在其状态改变时,改变它的行为。看起来对象似乎修改了它的类。别名:状态对象(Objects for State)。
在下面两种情况下均可以使用State模式:
1 一个对象的行为取决于它的状态,并且他必须在运行时刻根据状态改变它的行为。
2 一个操作中含有庞大的多分枝的条件语句,并且这些分支依赖于该对象的状态。这个状态通常用一个或多个枚举常量表示。通常...
分类:
其他好文 时间:
2014-05-25 22:47:41
阅读次数:
254
State模式中我们将状态逻辑和动作实现进行分离。允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类;在一个状态即将结束的时候启用下一个状态。
1 /////////state.h//////////////////////////////////////////////////...
分类:
其他好文 时间:
2014-05-25 20:34:33
阅读次数:
296
观察者模式的定义是: 定义对象中的一种 一对多的关系依赖关系,
以便当一个对象的状态改变的时候,所有依赖他的对象都能得到通知并且刷新 观察者模式是一种非常常见的设计模式,应该范围非常广, 就本人做游戏来说 ,用到的位置非常多
举一个游戏中的例子,玩家的血量这一个属性, 当玩家血量减少时候,...
分类:
其他好文 时间:
2014-05-25 19:07:10
阅读次数:
203
状态模式,当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。
状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简化。
适用场景:
一个对象的行为取决于他的状态,并且它必须在运行时刻根据状态改变他的行为。一个操作中含有庞大的多分支结构,并且这些分支决定于对象的状态。
...
分类:
其他好文 时间:
2014-05-25 16:26:36
阅读次数:
209
1.触发器:{server_name:item_name.func.operator.condition}一旦condition(条件)触发,则item状态改变触发器之间可以存在依赖关系,即itemA触发,则itemB也触发.2.动作actionaction是触发器触发后,应该采取的动作.其中动作除...
分类:
其他好文 时间:
2014-05-23 12:42:59
阅读次数:
460
观察者模式定义:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。
简单定义:让对象能够在状态改变时被通知。
OO原则:
为了交互对象之间的松耦合设计而努力。
以书中的WeatherStation为例:
Subject.java(定义接口)
package headfirst.observer.weather;
pu...
分类:
其他好文 时间:
2014-05-23 01:54:21
阅读次数:
337
堡垒问题是在学习递归回溯时的一个经典问题,在递归求解此类问题时,总是先判断当前状态是否行,如果可行,则试着放置一个问题的解,继续递归搜索。递归结束后之后要将状态改变回来,因为前提只是假设先放置着问题的解,之后肯定要修改回来才能保证问题解的正确性。如果忘记修改状态回来,程序肯定会出错。在搜索时,注.....
分类:
其他好文 时间:
2014-05-21 19:44:03
阅读次数:
429