AS已经落后了,为什么laya还大力推行AS,并建议作为第一laya开发语言

总所周知,所有的流行语言像C++、Java、JavaScript、TypeScript一直在进步,而AS已经很多年没有更新了,而且AS是闭源的,已经被Adobe放弃,将来也不会再更新。
已邀请:

charley

赞同来自: layabox

首先要认识到,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引擎支持的任何一种语言开发。

xiaosong

赞同来自:

Adobe没落影响As3语言存在吗?LayaAir开发推荐AS3语言,是借用了ActionScript3点语法,和flash开发沉淀下来的ide开发工具.
匿名用户

匿名用户

赞同来自:

不要歧视任何一门语言,只怪你自己不够强大 :)!!
 

survivor - 翻身做咸鱼

赞同来自:

保留看法就好。TS和JS都将经久不衰,至少ES6的存在目前还无法取代TS。并且TS和JS在其他领域依旧可以用到。所以如果你想使用TS或JS作为开发语言,那没什么好反对的。

anghuo

赞同来自:

各位搞清楚这个已然不是AS3语言 已经变异成Laya语言了呢!
只能说倾向AS3语言的开发程序员而已而已!
 

ohkei - as3、as2、h5

赞同来自:

給十多年as1.0、2.0、3.0的开发者们一些活路,不行吗?!!

要回复问题请先

商务合作
商务合作