译者引言:俗话说“他山之石,可以攻玉”,本文中的各位专家都站在自己的角度阐述了Flash需要向C#/Silverlight学习和借鉴的特性,另外还简要地介绍了一下haXe。
一些Flash/AS开发人员希望在他们的开发工具中能看到Silverlight/C#的特性。haXe是是一个多平台语言,它可以编译swf文件,并弥补AS3的不足。
Joa Ebert是一名Flash开发者,他对很多开源Flash项目都作出了自己的贡献。当说明了在自己使用AS3遇到的问题后,他说希望能看到三点改变:
贡献.对SDK和Flash Player的贡献是一个很棒的选择。但是我仍然希望贡献中包含Flash平台工具。
语言
- 为最新的说明书拓展开源Wiki,让更多的人为其做贡献。
- 创建一个开放式的AS文档。
- 停止开发类似于TextLayoutFramework的项目(开始时闭源,过了6个月又开源了)。
- 创建代码复查流程,让大家可以不用通过恶心的JIRA就可以做出贡献。
- 建立可用的roadmap,让大家都知道Adobe中的新鲜事。
性能
- 添加对泛型的支持。
- 真实的方法重载.
- 包含同步特性的线程支持。
- 重新考虑一下常量关键字,现在这东西根本没法用。
- 实现标准的OOP特性,比如私有的构造函数,抽象方法和抽象类。
- 用泛型创建集合框架。
- 创建一个健壮的并发性框架。
- 提升VM性能,特别是对象分配和方法调用
- 如果能加入可跟踪的JIT(即时编译),和热区就太好了。
- 改进编译器性能和输出。
另一位Flash开发者Sascha Balkauhas希望AS中加入以下特性:
- 方法重载(因为在写开源框架和库时没有方法重载会闹出很多笑话).
- 泛型
- 线程 (我喜欢)
- 多核CPU支持
- 私有的构造函数(把它们带回来!)
- 真实的抽象类/方法
- 枚举 (期待已久了,可就是没有)
- 硬件渲染 (PV3D是很好,但是东西多了就没折了!)
- 编译器性能 (如果哈haXe编译器雄起的话,只好把MXMLC丢在一边了!)
- 最后,我希望AIR运行时能有更好的OS-integration(比如改变屏幕分辨率),更好的性能和改进资源管理(这种AIR浪费RAM的方式不要再在这个星球上出现了!)
NicolasCannasse也在抱怨AS3,但是他给出了解决方案:haXe。haxe是一个开源的多平台语言,它可以用来编写程序,然后编译成很多种格式:比如JavaScript, NekoVM, PHP, C++或Flash6到10。根据Cannesse的说法,haXe有很多特性可以吸引AS程序员:
- 强类型语言
- First-class方法和函数 (闭包)
- 正则表达式
- 高级类型系统包含 :
- 类和接口
- 枚举
- 函数类型
- 匿名类型(结构)
- 动态
- 枚举
- 可选的构造函数参数
- 类型参数 (多态)
- 完整的类型推导:你不用键入局部变量
- 有可选约束的类型参数(泛型)
- 模块系统 : 包+私有定义
- 结构化图表类型 (推断类型)使用类型推导和匿名类型
- 多态方法
AS需要集成很多重要的特性以便和C#竞争,当然Flash还是设计工具的老大。与此同时,AS3社区的挫折感与日俱增。也许预定于10月4日到7日举办的Adobe MAX 2009大会将为Flash的未来增加一丝曙光。Max 2009大会的话题有:
- 路标: Flash平台运行时
- 路标: Flash平台服务器和服务
- 路标: Flash平台工具和框架
- 路标: web专业工具和CS系列中服务
- Flash Catalyst的前方是什么
- Adobe AIR 2会带来什么
- ColdFusion 9新特性
- Flash Builder 4 新特性
- Flash Player 新特性
- Flex 4新特性