layabox中关于as3、js、ts语言的选择

结论:建议使用as3


首先要认识到,LayaAir引擎使用的是AS3的语言的语法基础结构,并非是原生API,他原生的API开不开源与LayaAir引擎无关,LayaAir引擎是开源的。另外,AS3的语言语法与工具链接,经历过多年的页游时代磨练,非常的成熟。逐渐过时的不过是Flash和原生的API。与AS3语法结构以及工具链无关。

由于LayaAir引擎支持ActionScript3(AS3)、TypeScript(TS)、JavaScript(JS)三种语言开发,到底用哪种语言更好呢?常常困惑着刚接触引擎的新手们。其实开发者更熟悉哪种语言就采用哪种语言开发即可,引擎的API与性能都是完全一样的。我们再来看一下,除了我们支持AS3外,与其它的JS和TS相比的区别。


相比于JS而言,AS3语言的项目维护、管理、多人协作等成本较低,适合大型游戏项目的开发。而JS语言虽然上手快,入门更简单,但是在大型游戏的后期维护上,成本较高。因此如果在未来有开发大型游戏的可能,建议一开始就放弃选用JS语言进行开发。而相对于TS语言而言,AS3又有什么优势呢?AS3是三种语言里,唯一支持在发布HTML5版本的同时,发布Flash版本的语言。如果游戏有在PC浏览器上运营的需求,在HTML5支持不好的浏览器中自动切换到Flash版可以解决浏览器的不兼容性问题。

除了上面这段理由之外,那就是,引擎最原始的版本是AS3语言,JS引擎版本是通过LayaCompiler编译器生成,TS引擎版本是在JS引擎库的基础之上调用。从引擎结构来讲,AS3版本的引擎结构最为清晰,另外,如果未来想深入了解引擎层,或在查找某些深层次问题或BUG的时候,AS3环境下调试与查错非常的方便。而JS由于是弱类型语言,在中大型项目下查找问题是非常痛苦和消耗时间的。即便是TS版本,由于最终还是要在JS引擎包里去查,同样面临着JS语言的问题。如果你不能保证自己写的代码出错机率极低的话,再次推荐采用AS3语言进行开发。

最后,大家不要对语言的选择有什么畏惧,因为只需要学一下语言的基本规则即可。因为在游戏开发的过程中,引擎提供的API能完全满足开发游戏的需要,不需要去学习语言自身的API用法,这里尤其是指AS3,其原生的API不需要学习,了解引擎API即可开发游戏。各位开发者可根据项目需要,去选择LayaAir引擎支持的任何一种语言开发。

你可能感兴趣的:(layabox中关于as3、js、ts语言的选择)