张晓衡,软件研发经验值十年,后三年专注于手游开发。自开始使用Cocos2d-js 引擎后就完全陷入了javascript 和nodejs 的世界,之后又无意间开启了web 前端的大门,义无反顾的爱上了用Web前端技术、工具、思想来改进Cocos2d-js 和Creator 的项目研发工作流。平常喜欢将自己的工作记录于文字和视频之中,愿我的经验值能对大家的开发生涯有所帮助。
🔥🔥🔥
在过去两年时间里,我先后培养出了多名Cocos2d-js 客户端程序员,现在他们中的大部分还奋战在前线工作上。通过这几年和Cocos2d-html5 打交道,我发现无论是自己还是同事、亲友们,但凡有使用Cocos2d-html5 技术的普遍都存在着误区,以下是我根据个人切身经验结合身边人遇到的情况总结得来。
Cocos H5普遍存在的误区
第一
左倾思想
简单地把Cocos2d-html5
当成Cocos c++/lua 的替代品
1. 部分公司或开发人员是从c++ 或移动应用开发转岗过来的,于是就用c++ 的开发思路编写JS 代码
弊端:手写UI、开发、调试手段极其落后,通常的唯一方法就是打日志
2. 不会利用Javascript 的三方模块,甚至不知道去使用它,其原因是不了解Javascript 的模块化技术
弊端:自身代码没有模块化,也无法实现代码模块和库的积累
3. 把Cocos2d-html5 当成c++、lua 在使用,编写的代码不能在浏览器上运行
弊端:因为他们大多是在模拟器上开发,对web开发技术了解的不多,不能同时兼顾原生和浏览器
口头禅:先把手机端做好再做浏览器
第二
右倾思想
单纯地把Cocos2d-html5
当成“传统”的web 开发
1. 这类公司或开发人员,大多是从web 开发转过来,而且还只是“传统”的web开发,直白一点就是做网页
弊端:在index.html 中加载大量JS 代码和三方库
2. 由于没有模块化原因,代码中充斥着大量的全局变量,对面向对象和设计模式运用的很少
弊端:资源管理混乱,代码效率低下,无法驾驭复杂的业务场景。Cocos2d-html5 在资源管理上与Cocos c++/lua 最大的区别是“异步加载”,这也是疑惑的问题之一
3. 编写的代码不能在原生上运行
弊端:因为是在浏览器上开发、调试,以及第1条中提到的模块加载方式导致,只能通过浏览器运作
口头禅:先把浏览器好再做手机
我看Cocos2d-html5
曾经的认识我最早跟大家一样,认为Cocos2d-js 只是在Cocos2d-x 家族中选择一门脚本语言,我为什么会选择JS 而不是Lua 呢?是因为早些年使用Lua 做过端游服务器和客户端UI,当时对Lua 的理解和运用都很肤浅,对项目驾驭能力太差,从而对Lua 产生了不好的用户体验。
现在的理解使用Cocos2d-js 一段时间后,随着Javascript 语言的深入,逐步了解到围绕Nodejs、Web 前端的Javascript 前后端生态圈。慢慢地我意识到,原先以为只是选择一门脚本语言,其实选择的是Javascrip 平台和生态圈!而Cocos2d-html5 只是Javascript 中的一员。
回首自己三年多的Cocos2d 游戏开发经历,直到深入使用Cocos2d-js 以及后期开始使用Creator 做项目时,这才逐渐打开了Javascript 神奇世界的大门。
现在回过头来忽然意识到,自己选择的不仅仅是Cocos2d-html5,更多选择的是Javascript;不只是简单地选择了这门脚本语言,更偏重于选择的是Javascript平台和生态圈,这才是自己为什么一直对Cocos2d-html5 不离不弃的原因。明天,我将会重点介绍入门Javascript 几个经典又实用的工具,希望对大家的开发生涯能献上一点绵薄之力。
↙↙↙戳视频进入,观看更详细的解析
C姐今天先更到这里,是不是觉得意犹未尽吖?
精彩好文,搬好板凳,明天我们继续侃!
■ ■ ■
戳[新版二维码]看看呗。
无广告省流量,给你非一般的感觉。