Flash platform vs J2EE

<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>

經過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是一個全面的企業級應用架構解決方案,在客戶端包括AppletWebstartJavaFX技術並能開發獨立的應用;在web層提供了jspservlet技術;在應用層使用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應用那樣輕鬆部署、又具有良好的用戶體驗的應用,即RIARich Internet Application)。

RIA模糊了C/SB/S之間的界限,使得應用程序能夠快速部署、充分利用互聯網資源,同時具有強大的功能、良好的交互性、豐富的界面和快速的響應。Flash就是這樣一種技術。使用flash player AIR作爲前端界面,並連接專用的或集成的web層來構建應用。

adobeflash 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在企業級應用中的定位是構建應用的前端界面,爲企業級應用提供更好的用戶體驗。