[转]Adobe Flash runtimes路线图

  • 本站文章除注明转载外,均为本站原创或者翻译。
  • 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也尊重你的智商;
  • 本站部分原创和翻译文章提供markdown格式源码,欢迎使用文章源码进行转载;
  • 本博客采用 WPCMD 维护;
  • 本文标题:[转]Adobe Flash runtimes路线图
  • 本文链接:http://zengrong.net/post/1535.htm


本文转自:7yue’s Weblog

原文地址:http://www.adobe.com/devnet/flashplatform/whitepapers/roadmap.html

Adobe官方在今天发表了一篇非常非常重要的声明文档,是Adobe Flash runtimes路线图。这篇路线图提供了对于Adobe Flash runtimes的开发路线概览,这篇概览的目的是提供一个清楚的指引,告知外界与社区开发者们Adobe现在是如何思考未来1到2年内核心Flash功能的发展计划。

下面的中文内容要点全部出自该文档由7yue翻译并提炼

在过去的10多年里,Flash Player和Adobe AIR在互联网领域扮演了及其重要的角色,为多个平台系统,浏览器,桌面和设备提供了一致的用户体验内容。从最初的动画实现,Flash runtimes涉及了几乎所有的互联网媒体平台领域。Adobe坚信Flash在未来是契合于游戏和增值视频市场需求的,因此决定将Flash runtimes的开发专注在这些领域。与此同时,Adobe将针对runtimes进行架构和语言上的大幅改进,确保Flash runtimes将在其专注的领域可以提供未来十年的最优秀的用户体验内容制作的支持。

Flash runtimes主要指Flash Player与Adobe AIR两个运行时,Flash content主要指使用ActionScript3语言开发打包而成的SWF文件,通过Flash runtimes来展现。

Flash runtimes core,指Flash runtimes运行时核心功能,包括基础APIs和功能集合。主要的运行时核心在这份官方声明中是指通过Flash Player和Adobe AIR共同分享和具备的功能集合。

上个世纪90年代引入的Flash Player,发展至今,已经通过浏览器插件的形式实现了以下的功能:

Animation,矢量图形,音频(包括mp3),视频,麦克风与摄像头外设访问,底层位图操作,2进制数据sockets,强类型基于类的编程模型,基于硬件加速的2D和3D内容。

Flash runtimes的战略核心

伴随浏览器市场的加速竞争,浏览器厂商大幅增加了直接透过浏览器部署丰富图形动画交互的创新能力,这部分曾经正是Flash Player支持的功能。渐渐地,这部分内容已经可以透过HTML5,CSS3和JavaScript直接在浏览器上实现,而Flash Player在Web领域的需求也开始改变。

Adobe Flash runtimes的战略专注核心将面向2个领域,游戏和增值视频。首要的目标是,提供一流的,引人入胜的,游戏主机级别的图形交互内容和部署一系列的增值视频服务。这一战略计划不代表Flash runtimes不能支持以前的旧有内容,而是在未来,其研发的核心功能将高度优先支持游戏和增值视频领域。

游戏领域

Flash runtimes将允许Adobe满足市场的全新功能需求,用户通过Flash制作的游戏将快于其他同类型技术,同时还能使游戏触及最广泛的用户群体。Flash runtimes旨在游戏领域提供以下独一无二的优势:

  • 通过Flash Player浏览器插件,触及几乎全球的互联网用户,游戏内容通过Adobe AIR也能交付在移动设备之上
  • 完全基于硬件加速的2D和3D渲染支持,提供游戏主机级别的图形渲染质量
  • 丰富的游戏开发者生态系统
  • 强壮的,面向对象的编程语言
  • 世界级的设计师与开发者工作流

Adobe将围绕游戏市场专注打造一套强壮的业务体系,未来包括(但不限于):

  • 成熟的游戏开发者生态体系
  • 游戏服务体系
  • 允许游戏开发者在Flash游戏中使用C/C++语言的产品化支持

增值视频领域

Adobe Flash满足在线视频市场的爆炸性增长,通过提供高质量的视频,安全保护机制,跨浏览器和操作系统的一致性来达到这一要求。Adobe Flash runtimes在在线视频增值内容上会提供以下方面的支持:

  • 在多个平台上将Adobe视频流媒体服务和内容保护机制引入系统视频文件格式的支持。
  • 支持增值视频内容拥有者的业务需求
  • 同硬件厂商密切合作,提供高质量的整合级别的视频体验服务
  • 通过Flash runtimes打造的一致性播放器,实现多种视频格式编码的跨系统播放支持
  • 支持DRM方案
  • 成熟的全功能视频广告植入及后台分析方案

7yue:接下来的将是全文档最重要的摘要部分…

Flash runtimes技术路线图

下面的技术路线图包含了未来2年的Flash runtimes的发布功能。(这些部分会随着日期不断被Adobe更新)

Adobe AIR

未来Adobe AIR的开发将专注于全力协作核心Flash Player运行时。当桌面和移动设备特有APIs将被研发时,他们将不会特别针对Adobe AIR而实现(含义就是不会有runtime级别的功能只在AIR上有,而player上没有,SDK特别功能除外)

Flash Player 11.2

将在2012年第一季度发布内发布,将针对游戏和视频市场添加关键runtime核心功能:
某些计划加入的核心功能有:

  • Mouse-lock支持
  • 鼠标右键与中键事件支持
  • context menu关联菜单禁用
  • 针对Apple iOS和Google Android平台的Stage3D(通过AIR)
  • Stage3D硬件显卡驱动兼容支持提前至2008年1月
  • 全新的throttling event API (将在Flash页面最小化,暂停,恢复时派发)
  • 多线程视频解码管道

Flash Player “Cyril”

Adobe将在2012年第2季度发布的一个版本,code name “Cyril”。此发布将继续为游戏添加核心新功能,关键包括以下部分:

  • 全屏模式键盘输入支持
  • 低延迟音频
  • Stage3D 纹理素材流式下载
  • ByteArray的LZMA高压缩支持
  • Frame label事件体系

Flash Player “Dolores”

Adobe将在2012年下半年发布的一个版本,code name “Dolores”。此发布将继续为游戏添加核心新功能,关键包括以下部分:

  • ActionScript workers (允许ActionScript脚本的多个独立线程的并发执行)
  • 高级profiling工具服务
  • 支持更多的独立显卡,驱动兼容检测将提前至2005或2006年
  • 面向iOS发布的ActionScript性能优化
  • 鼠标游离事件体系

Flash Player “Next”

除去上述一系列的Flash Player发布之外,为了领先未来5到10年的市场,Adobe将持续改进Flash Player底层代码,这部分我们称之为Flash Player “Next”计划。下面是一些关键计划(但不限于此):

  • 重构和持续进化Flash runtime核心代码
  • 革新ActionScript VM
  • 更新ActionScript language

这些工作主要目的是为了让Flash runtimes和AS虚拟机显著提升代码执行性能,确保Flash runtimes在下个十年的领先地位。初步实现的计划是2013年。

ActionScript “Next”

从2006年引入ActionScript3后,一定范围内借助AS3实现的应用和内容在这几年发生了显著的变化。Adobe认为是时候认真修订和掌握其未来的变化了。从语言设计的角度,Adobe将使用下列的假设(设想)来指引下一代的ActionScript开发。

针对长期生产力的增长需求(包括强壮性,模块化和维护程度)和短期生产力的收益特征(快速敏捷开发)来考虑改进语言设计

  • 高性能的要求
  • 硬件实现的要求

首先,Adobe计划在短期内实现性能的显著提升,并以持续的性能提升为长期目标。所以,性能,性能,性能!将作为我们改进ActionScript的最高优先级目标。其次,Adobe将通过简化语言,提升工具支持,加速bug预防下手为开发者提高生产效率。最后,降低语言不必要的复杂程度。

以下几点是关于下一代ActionScript语言和虚拟机的有限披露:

  • Stringent static typing as default, with optional dynamic typing,默认非常严格的静态类型和可供选择的动态类型。大多数程序的大多数扩展都受益于语言的静态类型。然而,AS3倾向于在所有场景使用动态类型,其实绝对严格的静态类型则是首选。这一点将被修正。动态类型仍然存在,但是不再是ActionScript的默认设定,它将在需要使用的时候被明确指出。
  • Type inference,类型推断。类型声明将只在特定环境下变的需要。编译器将自动推测合适的类型声明,并且针对整个程序进行静态类型化,即使开发者没有声明任何类型。
  • Hardware-oriented numeric types,面向硬件的数字类型。例如,int,uint,float,float4,byte,short,long等(具体类型集合在讨论中)。现在AS3整形数值可以溢出到浮点类型,这一点将会被改动,未来数字的操作将不再数值运算时改变其类型,这能够大幅度降低运算的复杂度,提升runtime性能。

以上几点仅是我们正在考虑的部分,未来我们将会公布更多如何改动语言和VM的细节。

兼容性

下一个版本的ActionScript将是AS3的一个变革,但是一些场景下将无法完全兼容AS3.Adobe期望从AS3的移植成本可以降到最低,少于当年从AS2迁移到AS3的成本。

平台支持

Flash runtimes将在未来的平台支持上包含如下部分:

  • PC领域——Apple OS X,Adobe承诺将使Flash runtimes支持Apple的最新OS X (Mac OS X的升级),AIR应用也能够分发到桌面或Mac App store。
  • Microsoft Windows——Adobe承诺继续提供Flash runtimes对于微软Windows操作系统的支持。
  • Window8——微软目前正在开发Windows8,下一代微软Windows操作系统,这个系统包括一系列不同的配置,包括desktop和metro,以及芯片架构的不同支持(x86/64和ARM)。Adobe目前正在与微软紧密协作完成最终的Flash runtimes的Windows8配置支持。具体细节将会在最终确定配置类型后公布。
  • Linux——Adobe目前与Google正在紧密合作开发一款独立的,现代化的API,用来host浏览器的插件。这称为PPAPI,code-name是”Pepper”,目的在于提供一个介于插件和浏览器之间的抽象层,用来区分浏览器和系统级别的功能实现。更多信息,你可以参考Pepper API在http://code.google.com/ppapi/。Google未来将通过Pepper来实现Chrome全平台版本对于Flash Player的支持,包括Linux系统。
  • Mobile——Flash Player 11.1将是移动设备上基于浏览器的最后一个版本的Flash Player 插件。Adobe将持续投资开发者将Flash内容通过AIR打包分发到移动设备的方案。
  • TV……

全英文版本的白皮书在此下载:flash-runtimes-roadmap.pdf