cocos-lua 整体设计思路简介

最近对cocos-lua框架进行了一次整理,将文件重新划分文件夹存放,并对核心思路也做了框架化整理,这里记录下设计这套逻辑框架里的主要几个思路: 1. 这个框架除了提供对cocos2d进行一系列的Lua封装之外,还提供一套逻辑构建解决方案。 2. 画面渲染部分与游戏逻辑部分要区分开,最严格的标准就是逻辑代码里不应该有一行与cocos2d相关的代码。 3. 模块之间的协同工作的模块尽量通过事件通信,以此降低耦合。这就要求使用者在设计模块层面将此考虑进来,不然会很痛苦。事件名采用字符串(可采用一定规则来凸显,如“模块名.事件名”这种),契合Lua高效的字符串比对。 4. 模块内部采用消息机制,对一个模块发送消息,模块会将消息层层分发下去,除非中途有某个子模块处理完后宣布需要独吞此消息。 5. 尽量使用小模块的拼装组合来实现更大的模块,并借助消息机制来处理各自的问题。 6. 所有的逻辑都是由一个个的小逻辑节点层层堆叠出来,尽量避免大而全的自顶向下的逻辑设计。