Adobe 预将 Flex 赠与开源社区,继续解雇原核心软件销售人员

  • Charles Humble
  • 贾国清

2011 年 11 月 27 日

话题:JavaHTML5语言 & 开发架构

继 Adobe 放弃在移动设备上开发 Flash 的消息不久,Adobe 最近又宣布了将 Flex SDK 捐赠给现有的一个开源基金会的意向。

据现有消息还不能看出,Adobe 意向中的开源基金会到底会花落谁家,是创建于 2011 年 7 月,并宣称已经与 Adobe 进行合作的Open Spoon 基金会,还是另一个强有力的替代者,Apache 基金会。此举是在继 Adobe 收购 Nirobi,并将 PhoneGap 捐赠之后所做出的决定。InfoQ 特别联系到 Open Spoon 基金会的董事会,希望能从中了解到更多的信息,但其解释道更多细节仍在商讨之中,他们向 InfoQ 提供了一份声明:

Open Spoon 基金会中的成员主要由 Flex 思想领袖和一些社区成员组成。我们已和 Adobe 在一个新的开源项目中进行了亲密的合作,这种模式同 Fedora 和 Red Hat 组织极其相似。事实上,如果把 Flex SDK 代码看作叉子的话,我们的组织作为“勺子”,这两者间将产生着微妙的作用。我们的目标也是尽可能地保证社区和代码的统一。

就在最近,Adobe 提出了一个向开源迈进新想法。与之前相比,这称得上是一个壮举,我们坚信,这将加快 Adobe 和社区的投入,并对未来的发展起着积极的推动作用。受这件事的影响,Flex SDK 将会捐赠给另外一个现存的基金会,比如 Apache。同时,项目的主要负责人将会由 Adobe 代表和社区成员共同组成,同时还包含很多 Open Spoon 基金会的成员。

不得不说的是,这个消息至今还不只是全部。依 Adobe 周五发布的FAQ 文档所述,Adobe 将继续 Flash Builder 的开发,Flash Builder 是一款基于 Eclipse 的用来开发 Flex 应用的集成开发环境。尽管如此,从 FAQ 文档中仍可清晰的看出,Adobe 认为,在未来企业开发人员还是更应该关注 HTML5 的开发,而不是 Flex。“从长远来看,我们相信 HTML5 将会是企业应用开发技术中最好的选择”,Adobe 如是说。

不难想到,Adobe 的 FAQ 文档引发了开发者的一些不满。其中有人是这样回复 Adobe 关于 HTML 5 的评论的:

谁能告诉我,在 Adobe 在其官方博客中发表了这种声明后,哪个企业还会在大规模的 Flex 项目投入呢。我完全搞不明白,为什么这一切来的是如此突然,简直就是一场噩梦。

另一位开发者也写道:

我已经在 Flex 这个行业里摸爬滚打了数年。现在回想起来简直是在浪费时间。我确信,那些在 Flex 上付出了大量投入的企业客户,也与我有着同样的困惑。难道就没有过渡方案么?为什么 Adobe 将 Flex 舍弃是如此突然?HTML5、JS、CSS 至今还存在明显的兼容问题。对于我们来说,我们不构建简单的 Web 应用,我们只构建用户喜好的那些复杂的数据可视化工具。现在我们该如何去面对我们的客户?难道要告诉他们,对不起,Flex 已死而且 HTML5 还并不完善,还需要再等几年么?

Macromedia,作为最初开发 Flex 的公司,在 Flex 最初的版本中(1.0 和 1.5)就已经将目标瞄准了 Java 企业应用开发的市场。当时的产品还依赖于 Java EE 应用服务器,可根据需要将 MXML 和 ActionScript 实时地编译为 Flash 应用(二进制的 SWF 文件),该公司还在和企业级 Java 相关的新闻站点中投放了大量的广告。在 Adobe 收购 Macromedia 后不久,Adobe 便发布了 Flex 2,同时还大量修改了许可模型和许可方法。即便如此,Adobe 仍通过 Flex 数据服务的方式将 Flex 向企业解决方案中发展。结果,Flex 在企业开发人员中终于取得了深远的影响。

2007 年 Flex SDK 3 发布后,Flex SDK 就被开源,至今 Adobe 仍是该项目的主要推进者,目前,Adobe 将会放弃该权利,依照 FAQ 所述:

这个项目将由 Flex SDK 团队中的开发者以及 Flex 社区中的核心开发人员共同主导,其中也包括 Spoon 项目成员以及仍在企业中使用 Flex 的参与者。Flex SDK 的新特性将在新的管理模式下开发,此外,Adobe 也会继续为 Flex SDK 做出贡献。

于此同时,开源的 Java 在企业中的地位并没有遭受明显的侵害,Java 得到了一些重量级企业的大力支持,如 Apple、IBM、Oracle、SAP 以及其他一些公司。也有一些公司对于开源软件并不十分了解和信任,便通常会倾向于使用那些有企业在背后支持的软件,Jeff Roberts,Adobe 的"Flex and Fuse the Arch"讨论组管理者之一,在Twitter 上说道

恕我直言,任何一个企业级技术都需要一个单独的企业级管家来帮助其生存并获得成功。Flex 现在就失去了其在企业中的靠山。

Roberts 告诉 InfoQ:

大型企业要想在某一项技术中投入,首先需要确保这项技术的可用性,通常的一种形式就是看是否有相应的企业管家对其提供支持。Java 就是一个很好的例子。在它还没有开源之前,是 Sun 在背后支持着,随后是 Oracle。在微软的技术中,这种情况也很普遍。失去了企业管家,一些企业就在是否要拥抱一项新技术时犹豫不决,更别提还要在这个基础之上构建关键业务应用了。当各家公司还在为是否使用开源软件的问题上举棋不定时,我却要为在一些项目中获得使用审批,仅仅是为了能够在项目中使用一个单一的开源类库,更别提使用一门开发语言了,可行性研究、讨论还有逐级的主管审批。

失去了企业做支撑,组织就不能通过合约的方式来获得相关的服务做支持。当一个组织依赖于某种技术,而这种技术恰好已经开源的话,当遇到问题需要解决时他们又能求助于谁呢?谁会在危急关头来帮助他们将问题解决呢?

现在讨论 Adobe 将会保留多少控制权以及还将会投入多少资金还为时尚早,但除此之外可以肯定的是,将会有很多企业会对是否在这项技术中投入,或继续在这项技术中投入而犹豫不决。不管怎样,这些组织所作出的反应都是可以理解的。然而,如果要想让组织感觉好受一些或是继续使用 Flex 和 AIR 的话,还需要更多的来自 Adobe 方面的信息才能判断出来。

InfoQ 还连线了 Frank Sommers,他是Autospaces的创始人和总裁,他告诉我们:

首先,我认为 Adobe 的消息很让人困惑:Flex 一直是他们发展企业开发的主要渠道,现在他们竟然对这门技术敬而远之。已经有相当数量的公司在企业级 Flex 应用中进行了大量投入。Adobe 最近的声明表明其不会在新项目中考虑使用 Flex。我相信,已经有很多开发团队在周一早上得知这一消息后,花费了大量时间来讨论如何替换他们已有的通过 Flex 开发的用户界面。同样,如果最终使用 Flex 开发的机会比较渺茫的话,企业开发人员还要再花时间来找寻其它替代方案。

我倒是非常希望能够看到有一个 Flex 和 HTML 5 共同存在的过渡期,现在来看,将 Flex 融入 HTML 是一件很容易的事情,但反过来的话,把 HTML 融入到 Flex 中却并简单。

就我个人来讲,我倒并不是很关心 Flex SDK,我所关心的是 Flash runtime 和 Flash Player。Flex 的最大魅力之一就是已经在将近 98% 的个人电脑上(也包含笔记本电脑)安装了 Flash Player。与 Swing 和 Java UI 开发相比,这有着很强的竞争力。Adobe 最新的声明使得我们开始对 Flash Player 的未来有所担忧。在开源模式下继续 Flash Player 的开发,在未来将会显得尤为困难,不仅是技术本身的复杂性,还因为 Flash Player 普遍依赖于 Adobe 同 PC 厂商的配置模型。

或许,Flex 的时代真的已经结束。我个人当初转向 Flex 开发是因为基于 Java 的 UI 无法满足企业的要求,同时,基于 HTML 和 AJAX 的 Web 开发还要与浏览器兼容性问题作斗争。新一代的 Web 开发框架,诸如 Vaadin、GWT-Ext(Smart GWT)还有 Sancha 等等,或许可以解决浏览器兼容性的问题,这样在某种程度上,也可减少对 Flex 的需求。

主流的富互联网应用(RIA,Rich Internet Application)厂商也许会同意 Sommers 最后一个观点。微软不再重视 Silverlight、Adobe 也减少了 Flex 和 Flash 反面的投入,都意味着他们也认为 HTML 5 取得了胜利。Oracle 至今仍继续在 JavaFX 中进行着大量投入,近期 RIA 社区的举动可算是为 JavaFX 创造了机会。但事实上,JavaFX 仅与 RIA 有很少的关系,更重要的是他是一个 Java 桌面程序的升级。

查看英文原文:Adobe Donating Flex to Open Source Foundation; Continues Fire Sale on Formerly-Core Software

JavaHTML5语言 & 开发架构