为什么cocoscreator不选择兼容c#,而是只有js?

大神,打扰一下,为什么cocoscreator不选择兼容c#,而是只有js?
最新回答
阿三◥很可爱

2024-11-07 04:54:35

CocosCreator选择JavaScript而非C#作为脚本语言,基于其Web技术和开发背景。作为基于Web的工具,CocosCreator与JavaScript的结合非常合理。其JavaScript分支已经存在,重新开发另一种语言没有必要。而Unity选择C#,是因为Mono运行时作为引擎核心底层与应用层脚本间的粘合剂。Mono支持包括C#在内的多种语言,如Python,这决定于Mono的兼容性。然而,浏览器无法直接运行C#,而类似NW.JS这样的Web容器虽能调用C++原生代码,但这样操作并未带来实质性的价值。

关于JavaScript问题,Unity引擎中的JavaScript实际上是一个子集,其本质与C#、Boo等语言相似,都是Mono支持的语言。这说明Unity中的JavaScript与浏览器中运行的JavaScript完全不同。若希望在浏览器中直接运行C#,这在语言本身和运行原理上均无法实现,因为C#需要编译为中间语言(IL),再由CLR转换为机器码,与Web环境不兼容。

综上所述,平台特性和语言特性决定了CocosCreator最合适的语言是JavaScript。选择JavaScript与CocosCreator的Web技术背景紧密相关,且现有JavaScript分支的存在,使得无需重新开发语言。Unity与C#的搭配基于其对Mono的依赖,而Mono作为跨平台的运行时,支持多种语言,包括JavaScript。