Java程序员必须学习BlazeDS的十三个原因。通过这个例子,我来解释你可以使用BlazeDS的不同方法,任何一个你现有的Java应用程序或者新的Java应用程序。
理由一: 开源
Flex软件开发工具包核心(SDK)是开源架构,用以创建以及维护RIAs,不同浏览器和操作系统具有同样的外观设计风格。Flex是在Mozilla公共许可证下发布的。经过编译的Flex应用程序在私有的Adobe Flash平台上运行。
对于连接Flex 和Java,BlazeDS是为远程和信息服务的开源技术。它作为servlet运行在Java应用程序服务器,允许你在任何Java web应用程序规范中使用。BlazeDS是从Lesser GNU Public License (LGPL)得到的许可。除了BlazeDS的发布,Adobe公布了ActionScript信息格式说明(AMF),允许BlazeDS 和Java与Flex客户端联系使用二进制格式。
理由二:强大的社区支持
Flex具有一个非常活跃的社区,有很多有贡献的主题。Flex.org,是一个关于Adobe的社区新闻站点,差不多每天都有更新,Yahoo! 上的Flex使用小组有超过11,000名成员。
比如,Google 编码上的FlexLib项目贡献出大量的开源用户界面(UI)组成部分。Swiz 和 Mate项目贡献出一个架构来帮助处理事件。Gorilla Logic已经为自动化的UI测试贡献出Flex Monkey。
理由三:你可以在六个月内得到一份工作
根据Adobe的Flex教父James Ward的说法,市场对Flex高级工程师仍然有很大的需求。学习Flex能够让你掌握一门技术,在竞争中处于优势地位。
理由四:更高的商业投资回报率
一般来说,开发企业级web应用软件是众所周知的困难。Flex 和BlazeDS提供的不仅是更高级的工具,而且更容易扩展。开发者生产力的增长允许市场上销售的更多更快。Flex 和Flash创造了更完美的用户体验,提升了销量以及价格。
一个理想的例子是博德斯图书连锁店,它最近在介绍一种新的具有“Magic Shelf”的website。这个站点使用Flash界面来模拟翻书的感觉。博德斯书店发现这真的可以提高流通率:“使用这种Flash仿真界面,顾客可以查看图书,DVD和 CD的封面,使用这一举措比没有体验过的顾客多62%的购买率”
理由五:Flex 是第一种用来设计UIs的语言
很多设计语言都是在事后增加了创建UIs的支持功能。特别体现在Java Swing上。因此,Swing处理一些简单事情,比如线路数据,是非常痛苦的,要求使用特殊的Swing数据模型。Swing的最大问题是你不得不在应用程序界面中挖掘很深才能有效。
Flex恰恰相反:它一开始就是为创建web UIs而设计的。就像Bruce Eckel经常说的那样,Flex是第一款为UI设计的特定语言。所以使用Flex创建UI比使用其他方法要简单,比如JavaServer Page(JSP),JavaServer Faces (JSF)以及Swing。数据绑定,事件句柄,元件布局还有其它的常见UI发展技术都可以被这种语言创建,甚至你仅仅掌握了一小部分语言知识就可以。
理由六:拥有与Java类似的设计模型
你可以使用现有的开发Java的工具进行开发。你也可以使用包含在SDK中免费的命令行工具开发Flex应用程序,通过Adobe Flex Builder(一个Eclipse插件)或者使用最近的IntelliJ IDEA 8。
Flex提供一个状态环境,数据可以加载到客户端。编译模型与Hypertext Markup Language (HTML)设计相比更像是编译一个桌面客户端,使得任何下载Java Swing设计的人都对编译模型感到很熟悉。
Flex编译使用了一个MXML组合,一个UI markup语言,与可扩展的Markup 语言 (XML)相似,还有Adobe ActionScript和面向对象的脚本语言。这个组合使得编译Flex与编译Java相似,因为你可以使用概念非常熟悉的面向对象的方式。
理想的方法是创建你的开发环境使得Flex应用程序能够在web开发地址录中创建。使用这种方法,你不需要在每次创建后重新部署您的应用程序:一个简单的浏览器恢复功能,可以看到最后一次操作。结果是使用Flex 和BlazeDS开发相当有效。