Posted on 2007-09-29 15:09
Jaunt 阅读(239)
评论(0) 编辑 收藏 所属分类:
Adobe Flex
如果你是一个IT人士,Adobe Flash你一定不会陌生,在Real、Windows Media和Quicktime的众多竞争重重围攻下,终于杀出了一条血路,成为当前在网页内嵌入视频的第一选择,近期,Adobe 也正在考虑在其产品线中增添通过Web实现的
服务。全速进军客户端应用开发市场,它能
成功翻版Flash在Web中的成功么?
上个月,Adobe公司的Ben Forsaith演示了一个Flex 2的开发工具FlexBuilder,显示了其新的基于Eclipse的集成开发环境,意味着Flex在开发领域市场迈出了坚实的一步。
揭开Flex的面纱?
Adobe Flex 是为满足希望开发 Rich Internet 应用程序的企业级程序员的需求而推出的表示服务器和应用程序框架。RIA 将桌面软件的响应速度和丰富功能与 Web 应用程序的广度结合在一起,以提供效果更好的最终用户体验。Flex 表示服务器提供基于标准的、声明性的编程方法和流程,并提供运行时服务,用于开发和部署丰富客户端应用程序的表示层。
Flex 开发者使用直观的基于 XML 的语言来定义丰富的用户界面;该语言由 Flex 服务器翻译成智能的客户端应用程序,在普遍存在的 Flash 运行环境中。
从本质上来说,Flex只是编译Flash的另一种方式,不过Flex是以代码为中心,使用结构化查询语言XML和脚步语言ActionScript
来编译,对开发者来说,这种方式要比在面向设计的Flash集成开发环境更加容易掌握。它具有图形化控制功能的可视化设计器,同时它又是一个有效的应用程
序开发工具;当然,与那些比较成熟的开发工具比起来,例如微软的Visual Studio,还是有不足之处。
不过,这些缺点还不足以说明什么,Flash视频的成功很大程度上得益于它易于部署的特点。只需要在你的计算机上安装最新版的Flash播放器就一切
OK了。同样,Flex也是如此。ActionScript
3.0改进了JavaScript脚本语言,开发者使用它不仅仅可以来编写脚本而且还可以对主要的新功能进行即时编译强壮它类型选择。
ActionScipt的强类型不仅仅是花架子,可以被编译器来创建更有效的字节代码。很明显,这种方式可以大大提高客户端程序的运行速度。
Ajax的成功已经证明,运行在客户端的互联网应用程序,如果具备平滑的功能和丰富的用户体验,是十分受用户欢迎的,因此编写JavaScipt脚本语言即使承受一点烦恼,也是值得的。同时在你的AJAX应用程序和Flex应用程序中的代码可有效进行融合互通。
上述特点对从事开发的编程人员不是很陌生,例如,Java的Applets,微软的ActiveX和其他浏览器插件,都是同样的运行原理。在浏览器中
运行的Java应用程序功能虽然强大,但是,与Flash相比,Java运行环境非常庞大,而且存在令人困惑的不同版本问题,这阻挡了它被广泛采用的步
伐。而微软的AcitveX则既不跨平台又不跨浏览器,且开发的时候还要对相关的安全问题保持足够的警惕性。
一个更类似的例子当属微软的展示层技术WPF,它看上去已经解决了基于浏览器的.NET应用程序的安全问题,而且非常容易部署。不幸的是,WPF需要一个非常大的运行环境,且只工作在微软最近发布的强大的Vista操作系统中。尽管WPF可以提供相当丰富强大的图形和多媒体效果,但是它相对狭窄的应用范围限制了广泛发展的可能性。微软同时也有一个跨平台的的WPF版本,即WPF/Everywhere,但是它目前依然处于开发阶段。
此外,Adobe为开发人员构建下一代丰富互联网应用提供了无限可能,其可用性和效率均大大提高。
包括波音(Boeing)、道琼斯(Dow Jones)、三星(Samsung)、Indexes
和SAP在内的各行业领军人物,纷纷使用Adobe Flex和Flash
Player来创建下一代Web应用,该应用将桌面软件的优势和网络的广泛范围结合在一起,从而为用户创造出更有价值的体验。永明金融公司(Sun
Life Financial)软件工程师Chris Culhane说:“利用Flex
2,我们已经改进了员工使用的程序界面的丰富程度和可用性,这直接提高了我们的工作效率。在开发方面,和其它开发环境相比我们的应用开发速度提高了一倍。
我们只需编写很少的代码,Flex应用程序可以将其与后台系统无缝的集成在一起,因而最终的应用程序非常简单,易于维护。”
Flex的未来之路
因此在这个领域,Adobe无疑具有比较大的领先优势,但是在成绩和荣誉的背后,Flex的未来之路并不是一帆风顺的。
在接受CNET的采访时Adobe掌门人布鲁斯(Bruce Chizen)曾经说过“我不知道微软是否会争夺Adobe
的客户,但它正在进入我们已经进入的领域,我不清楚这是一种直接攻击呢,还是它的业务的一种副产品。通过PDF 和Flash
,与包括微软在内的任何其它公司相比,我们与最终用户有更多的接触。
用于文档交换的标准是PDF ,我认为微软不喜欢PDF 成为标准,Flash 成为动画标准。我认为微软不喜欢人们使用Adobe 的解决方案创建文本和电子表格之外的信息。
如果你是微软,就会试图取代PDF ,XPS 就是微软为此而进行的一次尝试。微软具有雄厚的财力和庞大的开发人员社区,它在桌面软件领域具有垄断优势,因此我不敢轻视它的一举一动。我们在全速前进,预计微软会紧紧追随我们。
从对Adobe公司掌门人的谈话我们不难发现,微软开始吞食Adobe的市场领域,Adobe公司要想通过Flex重现当年的神话传说,必须闯过微软的关口。
外因是一方面,Flex自身的缺点,也是没有在RIA市场确立主力位置的原因之一,使用ActionScript脚步语言对Java和.NET开发者来说简直是一种灾难,因为他们将丢失原来平台上功能的全面框架,此外,创建离线工作的应用程序对Flex是一个挑战。
尽管Flash运行环境已经被广泛部署,但是它不是通用的,尤其是在移动设备中,并且Flex 2要求Flash 9,不支持早期的版本。
随着下一个版本的Adobe Creative
Suite以及一个被称作Apollo的新产品的发布,Flex的一些缺陷将被解决。更新版的Creative Suite将意味着,Flash
集成开发环境像Flex一样支持相同版本的播放器,这将使得开发者可以很轻松的集成Flash电影到Flex项目中。
Apollo将使调整后Flex更适合创建桌面应用程序,适全离线使用,提供对本地系统文件的访问。另外,还将包含一个PDF整合功能。
但是,我预感到,Flex和Apollo将进一步分裂RIA应用程序的市场,能否重现WEB领域的辉煌,还得要未来实践中得到印证。