面向Flash开发人员和haXe平台的C#/Silverlight特性

很多Flash与ActionScript开发人员都希望在他们的开发工具中使用Silverlight和C#特性。haXe,一个可把其它文件编译成SWF文件的跨平台语言,承诺提供AS3所缺乏的功能。

在解释使用ActionScript(以下简称AS3)中遇到的困难之后,Joa Ebert,作为一位Flash开发人员和多个Flash开源项目的创始人,他正期待以下三个方面的改变:

贡献。给SDK和Flash播放器作出自己的一份贡献是绝佳选择,我很荣幸参与其中。但这也应该包括Flash平台的工具
  • 更新特定规范的开源Wiki并允许人们参与其中
  • 创建开源ActionScript文档
  • 不要像TextLayoutFramework那样开发一些非开源的项目,又在6个月之后重新开放
  • 创建代码进度审核并让人们参与,进而免去JIRA的烦恼
  • 制定可用的路线图,这样开发人员才会对Adobe的运作一目了然
语言
  • 添加泛型支持
  • 真正意义上的重载方法
  • 线程支持,含线程同步功能
  • 反思关键字const的实用性
  • 实现标准的面向对象功能,比如:私有构造函数、抽象方法和抽象类等
  • 利用泛型创建集合框架
  • 创建强大的并发框架
性能
  • 完善虚拟机性能,尤其是在对象分配和方法调用方面
  • 期待跟踪JIT功能和HotSpot技术
  • 完善编译器性能及其输出

另一位Flash开发人员,Sascha Balkau列出了期待的ActionScript功能:

  • 方法重载(由于缺乏它的话,编写开源框架和函数库会显得非常滑稽)
  • 泛型
  • 线程
  • 多核支持
  • 私有构造函数
  • 真正的抽象类和抽象方法
  • 枚举(期待已久。不知问题所在)
  • 硬件呈现(PV3D等固然是很好的项目,但如果画面上有多于1000个三角形的话就有点麻烦了)
  • 编译器性能(严格来说,如果haXe编译器问世的话,MXMLC需要躲到一边去了)
  • 最后但并不是不重要,我期待着对AIR运行时能与操作系统更好的集成(比方说修改屏幕解析)、更好的性能和资源管理(AIR太占内存了)

Nicolas Cannasse抱怨AS3的同时也提供了一个解决方案:haXe。haXe是开源的跨平台语言,可用于编写JavaScript、NekoVM、PHP、C++以及从Flash6到Flash10等应用程序。haXe公布了一系列相互兼容的语言功能,使得它对ActionScript程序员非常有吸引力,相关建议如下:

  • 强类型语言
  • 一流的方法和函数(闭包)
  • 正则表达式
  • 高级类型系统包括以下内容:
    • 类和接口
    • 枚举
    • 函数类型
    • 匿名类型
    • 动态类型
  • 枚举
    • 可选的构造函数参数(à la ML)
    • 类型参数(多态性)
  • 完整的类型引用:无需输入本地变量
  • 模块系统:包定义和私有定义
  • 使用类型引用和匿名类型的结构子类型转化(动态类型)
  • 多态方法

要和C#竞争,ActionScript还有些重要的功能需要实现,但在设计工具方面Flash仍然领先。与此同时,AS3社区的挫折感正逐渐蔓延。也许十月4日至7日的MAX 2009日程表会点亮Flash的未来。部分MAX 2009会议日程如下:

  • 路线图:Flash平台运行时
  • 路线图:Flash平台服务器和服务
  • 路线图:Flash平台工具与框架
  • 路线图:创建站点的Web专业工具和服务
  • Flash Catalyst的领先之处
  • 即将发布的Adobe AIR 2
  • ColdFusion 9新特性
  • Flash Builder 4新特性
  • Flash Player新特性
  • Flex 4新特性

查看英文原文:C#/Silverlight Features for Flash Developers and haXe

你可能感兴趣的:(面向Flash开发人员和haXe平台的C#/Silverlight特性)