转载请注明文章来源 http://blog.csdn.net/hepeng19861212
一、 Adobe flash player 庞大的用户群
从客户端(浏览器端)分析,只要浏览器上安装有 Adobe flash player 9.0 以上版本插件,即 Flex 的运行环境,均可运行 Flex 应用程序。 Millward Brown survey 调查机构在 2009 年 9 月公布的 统计数据 表明,在成熟市场(包括美国、加拿大、英国、法国、德国、日本、澳大利亚和新西兰),已经有 99.0% 的具备 Internet 上网条件的 PC 机安装了 Adobe falsh player ;其中安装 Adobe flash player 9.0 以上版本的 PC 用户比例已经达到了 99.6% 。可见,在产品成熟的前提下,基于 Flex 和 J2EE 的产品应用开发在市场上的快速普及是可能的。
二、 Flex 前台与后台 J2EE 多种多样的通信方式
为了罗列方便,把前后台通信简单分为低数据量通信和大数据量通信。
1. 低数据量通信,目前可以通过 Adobe 提供的以下几种技术:
1 ) HTTPService
2 ) Web Service
3 ) URLLoader :和 Request,URLvariables 组合使用
4 ) FileReference : 主要用来上传和下载文件
5 ) flash.net.Socket 通信。 Socket 通信可以使用客户端 socket 直接发送命令到服务器端 ServerSocket ,而不必间接通过数据库传送命令(例如为 ** 国客户开发的车辆监控系统),这样更能确保命令发送的实时性。
以上五种方式,在 ActionScript API 中都进行了封装,使用方便。
2. 大数据量的数据通信
1 ) AMFPHP( 开源项目,主要支持 PHP)
2 ) LiveCycle Data Services ( Adobe 提供,闭源,收费)
3 )其他各种第三方 AMF 通信框架( BlazeDS 是 Adobe 的 java 免费开源框架; OpenAMF )
三、对地图的支持
1.Google Maps API ( Flash 版)现在支持在 FlexBuilder 应用程序开发环境内进行 Flex 和 AIR 开发。 http://code.google.com/intl/zh-CN/apis/maps/documentation/flash/
2.Mapabc 为用户提供基于 ActionScript3 的地图 API 和搜索 API http://code.mapabc.com/
3.有待补充
四、支持 Flex 的 web server
Flex 产生的最终产品是静态的 HTML 中内嵌动态的 swf ,虽然表面上看它交互性和动态性很强,但归根结底它就是纯 HTML ,因此它可以被部署在绝大多数支持 html 的 web 服务器上,如 IIS , Apache php , Tomcat , jboss , webLogic 和 websphere 等。到底选择哪种服务器,则根据其后台决定。
五、目前使用 Flex 的其它考虑因素
1 、由于 Flex 在客户端浏览器中载入速度过慢,影响客户体验,所以该技术还不太适用于大中型网站开发,仅适用于企业级应用开发。
2 、团队的程序员对 Flex 技术不熟,没有成功的开发经验,网络上可参考的开发资料也不多。
3 、无论在沿海城市还是内地城市,都不难发现,已经有为数不少的软件公司用 Flex 成功开发出来的企业级应用。而现在正在从事 Flex 开发的软件公司,估计也已经不计其数了。 现在使用 Flex 开发,已经落后于很多其它的公司了。
因此,使用 Flex 开发产品,既是机遇也是挑战。但是经过以上的可行分析,我依然对 Flex-J2EE 技术在交通监控领域的应用开发充满信心。