90后游戏开发者cocos经验谈——如何入行、如何进步

又是一年毕业季,立刻就要步入“程序猿”行列的“小鲜肉们”是否已经作好准备了呢?今天咱们有幸邀请到了一位90后的开发者薛芃,请他来为即将毕业的鲜肉级开发者,来点属于90后的经验谈。
提到薛芃,估计你们都没据说过,可是常常泡cocos论坛的亲们,也许会对“寒江孤叶”这个名字有所耳闻,他但是名副其实的cocos铁杆粉丝。
近日cocos团队有幸邀请到了cocos论坛里的热门90后开发者薛芃,请他来聊聊游戏开发先后的故事。
 
Cocos:第一次与cocos接触是何时呢?为什么会选择cocos;
薛:接触cocos引擎是在cocos发布Cocos2d-2.1 beta3-x-2.1.1版本的时候,那时候在学校里几个朋友想一块儿开发个小游戏参加学校的CodeJam。咱们在制做游戏的时候,也在几款引擎间纠结过,但通过横向对比cocos引擎脱颖而出,他开源、上手容易、而且免费的优点让咱们果断选择了它。也正是此次选择,让我走进了cocos的殿堂。
当咱们开始学习cocos这套引擎的时候,咱们发现cocos上手真的很容易,寥寥几行代码,就能够实现很是炫酷的功能效果。3.x开始发布的cocos一站式解决方案,将游戏总体从项目的建立、UI设计、逻辑编写,到最后的项目调试、打包发布一整套流程都变得轻松简单。
Cocos:您为什么会成为cocos论坛里的当红人物?
薛: 刚刚开始使用cocos的时候,本身绝对是菜鸟一个,各类无所适从,因而我就泡进了cocos论坛。论坛里的学习、互助的氛围很是好,在学习和开发过程当中遇到的一些疑惑,总能在这里经过你们的讨论获得解决的办法。能够说,我是在这些论坛朋友的帮助下成长起来的,cocos论坛,就是我最初的老师。
同时,论坛中常常会有一些大牛分享本身的开发经验和代码,在他们的文章中,总能学到不少知识,增加本身的看法,但愿学弟们也养成来论坛学习技术的好习惯,学习知识,帮助他人也是提高能力的一种捷径。
 
Cocos:跟你们分享下你学习cocos的过程和经验吧!
薛: 有一些朋友老是问我该怎么学cocos引擎,但愿个人这些经验谈,能够帮助到你们。
首先我假设你已经掌握C++语言了(没掌握的速度去补课!)学习一个引擎,首先须要对其有一个总体的认识,若是一上来就学Sprite怎么用,Label是什么会有一种盲人摸象的感受。这个总体的认识包括,如何搭建cocos的开发环境,cocos的工具链,cocos主要功能,Cocos2d-x的源码的目录结构。接下来即是Cocos2d-x的核心类了,例如Node,Scene,Layer,Director,Sprite等,而后经过这些基础类尝试去写一些比较简单的UI界面,下一步则是学习各类Action、Scheduler和事件处理机制,这时候你就已经能够完成一些简单的小游戏了,例如贪食蛇,2048等。(成就感爆棚有木有?)下边你能够经过阅读Cocos2d-x build目录中的Test去掌握其余各式各样的类以及在项目开发中很是经常使用的UI控件。每一个人都会有本身不一样的学习方式,找到一个适合本身的方式就是最好的。
在学习过程当中,当你碰见不懂的问题的时候,你能够考虑去我上边提到的CocoaChina论坛提问,亦或者去cocos的中文站查看一下教程,或者经过开发者平台提问一下引擎开发团队和CVP团队,善用这些资源会让你学习和使用cocos变得更加容易。
 
Cocos:目前您有哪些开发实例能够分享呢?这个项目目前是什么状态,在这个过程当中,遇到了哪些问题,如何解决的呢?
薛:我如今正在开发一款棋牌项目,不久以后就能够和你们见面了。他是将一些常见的棋牌玩儿法综合到了一块儿,有常见的德州扑克,斗地主,也有你们耳熟能祥的干瞪眼,捉黑叉,甚至还有“拉大车”。感谢领导对个人信任,给我项目主程的职位,在项目开发过程当中,我碰见了很多的问题,例如,lua里边Scheduler不会自动remove,序列帧的内存和IO优化,tableview的cc.TABLECELL_SIZE_FOR_INDEX的返回是高和宽的问题(正常是不都是宽和高么?)等。可是在cocos社区和各位热心版主的帮助下,都完美的解决了。在此感谢那些热心的朋友们!
\
(使用cocos的开发过程)
\
Cocos:你是如何这么快就得到主程这个岗位的呢?
薛:进入这家公司后,我一共跟了两个项目。一个卡牌一个RPG,在项目的研发过程当中,我很快就熟悉了总体的项目框架,不明白的就去问,对每个不懂的地方都认真的理解。因为我C++掌握的不错,在开发过程当中,对cocos中一些并不熟悉的类和空间,也都够去阅读cocos的源代码,加深对控件的理解。本身去理解和学习的能力很是重要,可以经过看代码来学会一个方法的使用对于这种开源引擎尤其重要。另外,我善于沟通的性格为我和其余程序以及美工和策划都维护了至关好的关系,这也为我后来项目工做的开展带来了很大的益处。两个月前,公司决定开发一款棋牌类游戏,因为棋牌类游戏相对简单,也易于把控,因而领导决定让我来负责这个项目,目前来看,我没有让领导失望!
 
Cocos:给即将步入“程序猿”行列的学弟的建议:我的以为,学习或掌握什么重要,心态变化及调整:
薛:万丈高楼,始于基石,坚实的基本功尤其重要。在学习cocos以前,首先应当掌握好C++,推荐一本很是知名的书C++ Primer,它做为深刻学习C++是必备的!
我认为想学习C++,能够考虑先去学习C语言,C++是基于C语言开发的一种通用编程语言,掌握C语言对学习C++提供了很大的方便。在学习C语言时候,着重要理解并掌握指针,指针是C/C++语言的灵魂,贯穿整个程序开发的每一个角落。掌握了C语言后,C++并不难学了,不少朋友以为C++很难学,由于他在C语言的基础上提供了很是多的概念,尤为是面向对象的概念。花些时间,真正去理解面向对象,对后序的研发和学习都有莫大的帮助。此时,你对C++就已经有了必定的掌握了。接下来就要去深刻的学习C++的各类模板,STL以及其余更加复杂的概念。编程是一门实践科学,在学习过程当中,不断的练习是很是很是有必要的,将书中的例子都认证的敲一遍,再稍微修改一些代码运行一下,看看与本身所想的结果是否相同,这样会对代码的掌控右很大的提高。
其次,须要掌握一些基础的数据结构,如堆,栈,队列,二叉树,以及一些常见的搜索、排序算法也是颇有必要的。
每一位优秀的学生在学校都是天之骄子,然而越是优秀的学生走入职场越容易受到打击。由于进入公司后,你会发现,本身非但不是佼佼者了。返回而好像什么都不懂同样。这个落差的挫败感很容易打击到你的信心,这时候必定不要气馁,这是每一个人都会遇到的过程,你只要坚决信心,继续努力。很快你就能遇上去的。
 
Cocos:如何看待cocos,以为cocos的优点是什么呢?
薛:我认为cocos主要优点在于开源、易学、免费以及一个很是完善的中文社区。相比其余主流引擎,cocos更加关注国内市场,中文的教程更加丰富,并且针对开发者的提问以及BUG的反馈也更加及时。cocos支持使用Lua和JS两种脚本语言进行开发,而且提供了一个很是好用IDE,方便游戏的开发和调试,这比传统C++语言研发下降了门槛,提升了开发速度。

 
Cocos:下一步有什么计划,做为90后开发者中的佼佼者,有什么话要对学弟说
薛:个人下一步计划是深刻的学习OpenGL的知识,去更透彻理解cocos。同时掌握Cocos-js。Cocos-js是目前最热门的发展方向,JavaScript相比Lua更加成熟,更加容易掌握,前端和后端都能过使用Javascript进行开发,很容易完成交互,方便技术共享。并且Html5和CocosRuntime也是Cocos-js的一个决定性优点。因此下边的项目咱们决定采用Cocos-js进行开发。
有一个心得跟你们分享一下:在你学习的过程当中,记得写博客,不管是在CSDN仍是博客园均可以。当你想不起来以前写的一些功能和方法的实现的时候,若是你把他写到博客里,就能够很容易的翻出来。同时博客仍是你技术水平的最有效的证实。尤为是刚毕业大学生在应聘的时候,若是有一个本身的博客,是一个很好的加分项,同时也是像HR展示本身技术能力的一个好方式。
 前端

相关文章
相关标签/搜索