我正处于一个新的Flash游戏项目的计划阶段,并且想知道哪种语言会更好用?我已经对Actionscript 3有了很深的理解,并且还没有和Haxe一起工作过,但是我已经阅读了语言参考文档,看来Haxe有一些来自我最喜欢的语言C#和Ruby的功能.
所以我的问题有两个部分:
1)Haxe可以与闪存组件(swc文件)互操作吗?例如,如果我使用Flash IDE来设置一些控件,我可以导入这些控件并在Haxe中使用它们吗?
2)Haxe编译器是否有任何性能优势?或任何陷阱?
1)是的,没有.截至2.03,Haxe可以出口SWC.这意味着您可以在Haxe中编写代码,编译为SWC,然后将该SWC与Flash结合使用.现在Haxe不支持SWC输入,只支持输出(虽然我相信他们正在研究这个).
2)是的,使用Haxe有好处 - 与Adobe的编译器不同,Haxe在编译期间实际上做了一些优化(这已成为社区争论的主要障碍).此外,Haxe利用Flash Player 10产生的一些"隐藏"新字节码,目前Flash和Flash都没有使用 - 只有Adobe的Alchemy(从C/C++源交叉编译成SWC).
我所知道的唯一"问题"是它是一种bizzaro ActionScript - 事情就足够了,它会让你绊倒相当多的东西.话虽这么说,具有仿制药和更快的代码等功能,价格很低!
你可以在lib.haxe.org上找到很多有用的东西...(checkout haxelib就此而言(有点像红宝石,有人可以说))...还有一个AS3到Haxe转换器...所以可以尝试将corelib的相关部分翻译成Haxe ...虽然需要一些手动修复,但我猜...当涉及到控件时,只需查看Haxe gui库...其中有几个漂浮在网络上...
现在Haxe专业人士:关于Haxe的一个好处是,编译器速度要快得多,所以你不要花很多时间编译......严重的是,它有所不同......
另外,Haxe是一种更丰富的语言,因为brandden已经明确表示......我只是想补充一点,你应该看看枚举...
但是,关于Haxe的最好的事情是,当我来写一个服务器时,你可以使用相同的语言,再加上像Haxe remoting这样的东西让你的生活变得非常轻松......
有一些AS3专业人员,但事实是,他们中的大多数只是与事实有关,如果你尝试像在AS3中那样解决Haxe中的问题,语言似乎很古怪并且在运行时显示出意想不到的行为......如果你保持严谨和打字,一切都变得完美......
希望有帮助......;)
格尔茨
back2dos