Flex和Flash的關系揭秘
本文和大家重點討論一下Flex和Flash的關系,在沒有介紹之前先看一下Flex的概念,Flex通常是指AdobeFlex,它是涵蓋了支持RIA(RichInternetApplications)的開發和部署的一系列技術組合。
Flex簡介
Flex通常是指AdobeFlex,是最初由Macromedia公司在2004年3月發布的,基于其專有的MacromediaFlash平臺,它是涵蓋了支持RIA(RichInternetApplications)的開發和部署的一系列技術組合。Flex的另一個意思是是一款生成掃描器的工具,能夠識別文本中的詞法模式。
Flex和Flash的關系
首先這里想說的是,Flash并非只是一個單純的矢量動畫創作工具,而是一個憑借腳本語言ActionScript在功能和定位上不斷演變的網絡應用開發工具。早在FlashMX的時候就已經成為macroemdia推廣RIA戰略的工具。但是畢竟Flash最初的定位是面向美工的矢量動畫創作工具,并不適合傳統的開發人員。于是Flex成為開發者們的首選。
Flex和Flash都以ActionScript作為其核心編程語言,并被編譯成swf文件運行于Flashplayer虛擬機里。因此Flex也繼承了Flash在表示層上先天性的美感、除了視覺上的舒適感外,還天生具備方便的矢量圖形、動畫和媒體處理接口。
雖然Flex和Flash有眾多的相似點,但是不同之處仍然很多
1.盡管公用ActionScript,但是使用的庫并不完全相同,更合適的說法是兩者使用著兩套具有極大“功能重疊”范圍的庫。
2.Flash偏向的是美工人員,所以更容易發揮特效處理的優勢,Flex偏向開發人員,所以容易做出具有豐富交互功能的應用程序。
3.Flash只能以ActionScript腳本的形式開發(舞臺被關聯到一個稱之為documentclass的類里),另外舞臺元素也是可以綁定腳本的,不過從軟件工程的角度講不建議這樣用,Flex還可以使用稱作mxml的標記語言來描述應用的外觀和行為,mxml中可以直接嵌入ActionScript腳本。
4.由于第三點而造成的兩者市場定位不同,Flex是面向企業級的網絡應用程序,Flash則面向諸如平面動畫、廣告設計等多媒體展示程序。
5.借助FlashLite這一移動設備上的Flashplayer,Flash可以開發移動應用,Flex則不行。
6.Flash的編程模型是基于時間軸的,Flex的則是基于窗體,雖然它運行在網頁里。
【編輯推薦】