Flash platform vs J2EE
经过Adobe的苦心经营,flash已经从一个制作动画的“小工具”,发展成为一个技术平台,从而足以支撑Adobe RIA 的构想。从下图可以看出,整个flash平台中包含了服务器应用、客户端技术、与其他技术体系的整合以及多种开发工具,成为一个独立的技术体系。
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8">
<meta name="GENERATOR" content="OpenOffice.org 3.0 (Linux)"> <style type="text/css"> <!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } --> </style>如何恰当地运用flash技术?需要考虑flash出现的技术背景以及Adobe针对flash的定位。Flash platform并不是“重复发明轮子”。下图是典型的J2EE多层架构。J2EE是一个全面的企业级应用架构解决方案,在客户端包括Applet、Webstart、JavaFX技术并能开发独立的应用;在web层提供了jsp和servlet技术;在应用层使用EJB存储业务对象或处理业务逻辑。
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8">
<meta name="GENERATOR" content="OpenOffice.org 3.0 (Linux)"> <style type="text/css"> <!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } --> </style>尽管J2EE取得了辉煌的成绩,但是Java在客户端方面没有太大的建树。而且人们对界面的过分要求成了html难以承受之重,甚至导致了对http的大量误用。界面开发者苦不堪言。在这种背景下,micromedia提出了一种即可以象web应用那样轻松部署、又具有良好的用户体验的应用,即RIA(Rich Internet Application)。
RIA模糊了C/S和B/S之间的界限,使得应用程序能够快速部署、充分利用互联网资源,同时具有强大的功能、良好的交互性、丰富的界面和快速的响应。Flash就是这样一种技术。使用flash player 或 AIR作为前端界面,并连接专用的或集成的web层来构建应用。
从adobe的flash platform “Big Picture”中,我们很容易得出flash构建应用的方式,如下图:
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8">
<meta name="GENERATOR" content="OpenOffice.org 3.0 (Linux)"> <style type="text/css"> <!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } --> </style>与j2ee多层架构进行对比不难看出,flash platform在企业级应用中的定位是构建应用的前端界面,为企业级应用提供更好的用户体验。