cocos-js项目结构

一、项目组织

1、以文件夹的形式管理你的游戏场景

通过之前的教学视频中提供的源代码,大家也可以看到,在我的代码之中,往往是一个文件夹对应一个场景,然后再在文件夹中创建对应的层。这样做的好处,在于我们可以很好的找到自己想找的文件在哪个位置,而不用在一堆文件中消耗自己的眼睛。同时,这么做还有助于我们清晰开发时的思路。

2、让你的代码像组成组成汽车的模块那样灵活

同样,通过之前教程中我的代码,大家可以很明显的看到我将各个功能都分别用一个函数封装好了,当想要使用某个功能时,就调用它;不使用时,就注释掉它。这样将一个程序分解为不同的模块,在使用中,代码的灵活性大增,也方便大家进行调试,代码的可读性也提高了很多,可谓一举多得。


二、代码风格

好的代码风格让人在阅读你的代码时心旷神怡,而不好的代码风格就很容易让人觉得食之无味了。

1、排版对齐

所谓的排版对齐,就是在为属性赋值或者给变量赋值时,尽量让中间的":"以及"="排列在一条竖线上,这样看上去比较赏心悦目,看起来也会很清晰。

2、运算符前后加上一个空格

不仅仅是运算符,在函数的定义中,变量列表中,加上一个空格也是有助于提高代码可读性的。

例如:

1
2
3
var sprite =  new  cc.Sprite();
ctor : function(){}
onTouchBegan : function (touch, sender){}

当代码没有那么紧凑时,看上去也会舒服很多。

3、属性命名方式

属性命名有多种方式,但是一个项目中所使用的命名方式应该保持同一种风格。

常见的命名方式有:

1
2
3
4
5
6
name1,touch1;
name_1,touch_1;
outMan,normalizedPosition,positionX; //驼峰法
OutMan,NormalizedPosition,PositionX;
out_man,normalized_position,position_x;
Out_Man,Normalized_Position,Position_X;

建议使用驼峰法。

脚本语言中可能会有使用"_"前缀来表示私有变量的习惯,但是我们不建议这样做。

4、跨方法访问的属性,建议在类中做个声明,千万不要偷懒,这样可以保证类的成员清晰

5、没有跨方法访问的属性,我们一般声明为局部变量

6、关于偷懒

程序员的最高境界,copy。

对于经常使用的节点,我们可以用配置的方式将其持久化,这样可以提高我们的开发速度

7、层初始化,采用load的加载方式,如:loadMenuLayer(),loadScoreLayer()等;

而要在层中添加精灵之类的,可以采用类似的add方法添加;

而删除则可以使用delete方式(和load一样,与引擎的remove、init风格区分);

对于事件,则可以使用on开头,如onGameOver等。

这么做可以将我们的函数通过功能区分开来,起到暗示的作用,提高代码可读性。

8、一段代码实现一个功能

在代码的编写中,我们最好将一段功能相关的代码放在一起,然后用一个换行隔开不同的功能模块。

9、一个方法的实现应该不超过50行代码

10、一个方法的参数最好不要超过5个,超过5个时,最好使用配置的方式进行传递


三、注释风格

1、动词【名词】【说明】

a)根据人类的阅读习惯,我们一般会先关注这个方法的作用。例如,是加载,还是绑定,还是注册?这就是动词。

b)动词之后(假设是加载),那么我们是要加载什么?例如:加载【队友】。

c)加载之后,有可能会有一些补充说明。例如:加载【队友】【猪一样的队友】。

2、中括号还可以起到高亮的作用

当然,如果不喜欢使用中括号,我们也可以使用其他有类似作用的符号来达到相同的效果。代码可读性是判断程序员能力重要的一环。

3、没有注释的代码,才是最好的代码

试想一下,如果你的代码可以让人一眼看去就知道你所写的是什么,那么还需要注释么?说不定还会因为注释而影响了别人的阅读。所以说,如果你能让你的代码达到这种境界,你写出来的才是最好的代码。


四、资源管理

资源管理时,我们也可以使用类似项目文件管理的方式。

比如,在同一层(假设为GamePlay)下面所用到的资源,我们给它们命名时,可以给它们加上相同的前缀,例如:gp_bg.png,gp_player.png,gp_music.mp3等等。

这样做的好处,就是便于资源以场景为单位进行管理。

所以,在游戏开发中,大家最好像管理资源一样去管理自己的项目文件。这不仅是为了别人好,对自己来说,也可以有效提高自己的工作效率。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值