博客
关于我
重构RoomScene模块
阅读量:253 次
发布时间:2019-03-01

本文共 844 字,大约阅读时间需要 2 分钟。

1.函数名字的命名

initXXX   ->只调用一次

比如:设置当前的玩法,那么在这个里面调用一次即可,不应该又在这里调用,又在其它的里面调用,很容易出错
updateXXX ->调用多次
比如:人数的刷新,可能过段时间就调用一次,因此不要起一个init方法
 

2.当前是什么玩法,玩法处于哪个阶段。一个模块只能干一件事情。避免写大量的if else,看看能否可采用配置的形式去实现

if playType == XXX then

if stage == XXX then
...
elseif stage == XXX then
...
end
elseif playType == XXX then
...
end
然后,要根据当前是什么玩法,及其什么阶段,来显示界面。
 

3.全局变量的处理

写成service方法,不要用gt.playerData这种类似的写法,个人觉得不好.到底在service中处理gt.var 还是封装到runningScene.var

还是写到XXXService中的一个成员呢? 最好这个变量使用前起码初始化过一次,写gt中也是可以的。
比如托管状态,比如金币的一些信息:补助日期了,之类的
 

4.有些消息可能在界面中才发,也有可能在别的界面时,已经发了,消息注册到CommonMessage中即可

这时候可以先拿着XXXService存储下当前的状态,然后: 

1.enter时处理一下,代表在别的界面已经发了;
2.在processEvent时处理一下,代表在本次这个界面中发了.

5.最好还是想清楚了再写代码

然而有时候确实想不清楚就开始动手写了,写完后,上线的代码,不一定有把握,所以不敢重构,看来还是得多些代码才行。

6.程序块注释的组织

最好将相同模块的方法用:

---------比赛场-------------
---------金币场-------------
---------通用---------------
 

...这样区分开来,还是不错的

 

转载地址:http://wboa.baihongyu.com/

你可能感兴趣的文章
HCIA(计算机网络概念、网络协议模型意义)
查看>>
HCIA(OSI七层参考模型详解)
查看>>
设计模式一(工厂模式)
查看>>
CentOS安装java开发环境(输入javac无反应及解决办法)
查看>>
node.js手写http服务器连接mysql数据库
查看>>
css 设置背景图片铺满固定不动
查看>>
laravel server error 服务器内部错误
查看>>
漫谈Java理念的转变与JVM的五大优势
查看>>
编码的奥秘:手电筒剖析
查看>>
实习记录-1
查看>>
【图像去噪】基于全变分算法图像去噪matlab源码
查看>>
【TSP】基于混合粒子群求解TSP问题matlab源码
查看>>
【lsp预测】基于粒子群优化强化学习预测matlab源码
查看>>
socktIo的客户端与nodejs服务器端代码示例
查看>>
445. 两数相加 II
查看>>
Ubuntu | cannot remove is a directory
查看>>
CentOS | 02 Centos7如何调节桌面的图标的大小?
查看>>
CentOS | 操作集合(持续更新...)
查看>>
bzoj 4999: This Problem Is Too Simple!
查看>>
Mysql insert插入中文时报1366错误
查看>>