国内移动app所⽤技术的发展历程
零·引⾔
标题所说的⼿机软件,包括⼀般app软件与游戏,我将从⼊⾏开始,把⾃⼰所感受到的移动技术变化做个分享
⼀、智能机前期
楼主在上学期间到参加⼯作⼀年,使⽤的都是索爱,对这段时间的移动软件没太多概念,也没太多记忆,⼀年后,⼤概2011年初,⼊⼿了第⼀台⼿机 iphone 4
⼆、智能机原⽣时期
在参加⼯作⼀年后,⼤概2011年,有幸通过培训机构参加了移动4G游戏开发,学习重点是Andriod游戏开发,我还清楚的记得当时学习,因为⼤部分学员没有学习⽤⼿机,机构会给每个学员发个新的Android设备,当时的普及度可想⽽知。
在机构内的学习流程,从JAVA基础学起,再进阶到Android平台开发。
然后在之后,进⼊了国内⼀家知名的公司。在2011年下半年,参与制作了Android版的德州扑克。靠着这款游戏的收⼊⽀撑着整个公司未来⼏年的收⼊直⾄上市。
可能很难想象,早期的游戏都是由原⽣语⾔开发,可以想象带来了⼏个问题:
1、开发成本⼤,Android设备的JAVA,IOS的oc,当时⼤部分公司,做⼀款软件发布2个平台,是需要2波⼈并⾏开发的。
2、游戏有两种更新⽅式,⼀个是⼤家熟知的整包更新,另⼀个被称为增量更新,类似于现在的热更新,只不过更新完了之后依然需要进⾏游戏下载
三、跨平台引擎时期
⼤概2012年开始,以cocos2dx、Unity为⾸的引擎开始⼤量普及,有实⼒的公司也会借鉴其引擎实现⽅式推出⾃⼰的引擎进⾏开发,例如我当时所在的公司,参照了cocos2dx-lua开发了⾃⼰的引擎。
那么不管是哪种跨平台引擎,它解决上述问题的⽅式都很类似,
跨平台:所有在游戏内看到的画⾯,只是由⼀个opengl画板绘制出来的图⽚,引擎需要做的只是为这个画板提供⼀套api,然后android、ios循环便利刷新这个画板
更新:上述画板内的逻辑通过脚本语⾔lua实现,得以通过下载脚本语⾔的⽅法实现动态更新。
当然这个时期的cocos2dx引擎,还存在⼤部分cococs2dx-c++的⽤户,也就是说⽆法做到动态热更新。
总体来说这个阶段各个⼚商都处于探索最佳解决⽅案的阶段,并且市场对各个提供⽅案也进⾏着筛选
四、引擎⼤统⼀
最终cocos2dx,unity占领了⼤部分市场,其他引擎⾯临由于⾃⾝开发实⼒局限以及闭门造车的做法,慢慢⾯临淘汰,这带来⼀个问题,
⾮使⽤主流引擎的开发将会慢慢被市场给淘汰,为什么?
因为现阶段的各⾃研引擎的公司都使⽤脚本语⾔进⾏开发,⽽且⼀般公司不像cocos2dx unity这样对⽤户开源,公司内部引擎对于引擎组外的业务部门都是⾮公开透明的,也就导致⼀个开发⼯作了⼏年,除了对脚本语⾔使⽤熟练外,不具备其他优势了,他即接触不到引擎层⾯的代码,在公司内部使⽤的api也对外⾯没有任何价值
这个阶段能够在cocos2dx 以及 unity坚持下来的开发⽆疑是幸运的,保持市场竞争离的同时,由于引擎开源也在飞速的提升⾃⼰。
在上述引擎逐渐占领移动游戏市场的同时,也在不断进⾏的技术上的探索与⾰新,得以进⼊到下⾯⼀个阶段原生安卓app开发
五、h5⼤⽅异彩
随着⼈们的⽣活、⼯作节奏的提升,。动辄下载⼀个app进⾏游玩,觉得不喜欢⼜删除,类似这样越来越被⽤户抵触。
这个时候,随着⼩游戏、⼩程序的出现,发觉了⼀种新的⾏为模式,甚⾄渐渐成为⽬前⽤户的主要⾏为:碎⽚时间游玩。
⽤户越来越接受⼩⽽精的游戏,并且⼗分享受近乎0成本的游玩成本-点击即玩,
cocos2dx引擎⼗分敏锐的察觉到趋势并且推出了cocoscreator解决⽅案:原⽣、h5、pc 3端,⽀持⼏乎所有⼩游戏平台。并且同样开源。
底层依然是cocos2dx,于是以前的⽤户⼜平滑的过度到cocoscreator,
由于cocos团队在移动端积累的强⼤技术实⼒,也⽴马在各h5引擎竟品中完成超车,成为不⼆的选择。
⾄此,国内的移动开发技术发展⾄今。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论