Apache Flex
Apache Flex(前稱Adobe Flex)是一個基於AdobeFlash平台的,用以開發和部署RIA(Rich Internet Applications)的SDK(Software Development Kit)。最初由Macromedia公司於2004年3月發布,並且後來由Adobe收購,並由Adobe於2011年將之捐獻給Apache軟件基金會[3],在2012年推動成為首要項目。
開發者 | Apache Software Foundation、Adobe Systems |
---|---|
首次發布 | 2004年6月20日 |
當前版本 |
|
源代碼庫 | |
編程語言 | ActionScript、Java[2]、CSS、XML |
操作系統 | Windows、Mac OS X、Linux、Android、iOS、BlackBerry Tablet OS |
類型 | 軟體開發套件 |
許可協議 | Apache License, version 2.0 |
網站 | Apache Flex、Adobe Flex |
Flex 3 SDK在2008年以開放源代碼的Mozilla公共許可證釋出。因此,可以用通用的集成開發環境開發Flex應用,如IntelliJ IDEA、Eclipse、自由及開放源代碼的IDE FlashDevelop,以及專屬軟件Adobe Flash Builder。最新版的SDK版本是4.16.1,採用第2版的Apache許可證釋出。
成因
傳統的程序員在開發動畫應用方面存在困難,Flex 平台最初就是因此而產生。Flex 試圖通過提供一個程序員們已經熟知的工作流和編程模型來改善這個問題。
Flex 最初是作為一個J2EE(Java 2 Platform, Enterprise Edition)應用,或者可以說是JSP(JavaServer Pages)標籤庫而發布的。它可以把運行中的MXML(Flex標記語言)和ActionScript編譯成FLASH應用程序(即二進制的SWF文件)。最新版的FLEX支持創建靜態文件,該文件使用解釋編譯方式並且不需要購買服務器許可證就可以在線部署。
Flex的目標是讓程序員更快更簡單地開發RIA應用。在多層式開發模型中,Flex應用屬於表現層。
Flex 採用GUI界面開發,使用基於XML的MXML語言。Flex 具有多種組件,可實現Web Services,遠程對象,drag and drop,列排序,圖表等功能;FLEX內建動畫效果和其它簡單互動界面等。相對於基於HTML的應用(如PHP、ASP、JSP、ColdFusion及CFMX等)在每個請求時都需要執行服務器端的模板,由於客戶端只需要載入一次,FLEX應用程序的工作流被大大改善。FLEX的語言和文件結構也試圖把應用程序的邏輯從設計中分離出來。
Flex 服務器也是客戶端和XML Web Services及遠程對象(Coldfusion CFCs,或Java類,等支持Action Message Format的其他對象)之間通訊的通路。
一般被認為可能是 Flex 替代品的是OpenLaszlo和AJAX技術。
但在2014後重大的變革:由原先MXML+CSS+AS的發展路線,另外追加產生js發展路線,在移動平台發展動盪的2014年隨著AIR跨平台的支援上,產生了更彈性的變數 目前普遍認為相較於HTML更合適在移動平台App發展更有前瞻性
Flex 和 ColdFusion
Macromedia 把一部份 Flex 1.5 的子集嵌入到了它的ColdFusion MX 7中間件平台中以供在 Flash 表單中使用。雖然可以使用這個平台來開發RIA,但是它原來的目的只是為了開發豐富的表單應用,所以這個功能並不為Macromedia 所支持。
Flex 應用開發步驟
- 使用 Flash Builder
- 使用一系統預定義組件(窗口,按鈕等)來定義一個開發界面。
- 組織安排組件,現在用戶自定義的界面設計。
- 使用風格和主題來定義可見設計。
- 增加動態動作,如應用程序之間的互動。
- 定義並在需要時連接上一個數據服務。
- 從源代碼轉換成各種平台安裝文件。
版本歷史
1.0 | / |
1.5 | / |
2 | / |
3 | 2007年4月26日 |
4 | 2010年3月22日 |
4.5 | 2011年5月3日 |
4.8.0 | 2012年7月25日 |
4.9.0 | 2013年1月11日 |
4.9.1 | 2013年2月28日 |
4.10.0 | 2013年8月6日 |
4.11.0 | 2013年10月28日 |
4.12.1 | 2014年5月3日 |
4.13.0 | 2014年7月28日 |
4.14.0 | 2015年2月3日 |
4.14.1 | 2015年3月31日 |
4.15.0 | 2016年1月11日 |
4.16.0 | 2017年3月12日 |
4.16.1 | 2017年11月22日 |
相關術語
技術郵件列表
- Flexcoders - Flex Developer Mailing List(頁面存檔備份,存於網際網路檔案館)
- ColdFusion Flex List at House of Fusion.
參考資料
- ^ Apache Flex 4.16.1 Released!.
- ^ Apache Flex SDK - GitHub. GitHub. [2014-06-27]. (原始內容存檔於2018-06-10).
- ^ Project History. Apache軟體基金會. [2019-09-02]. (原始內容存檔於2019-08-17).
外部連結
- Official Adobe Flex site(頁面存檔備份,存於網際網路檔案館)
- Flex 官方起始頁
- 官方中文Flex摘要頁(頁面存檔備份,存於網際網路檔案館)
- 中文Flex範例
- CFlex - Community Driven Adobe Flex Developer site(頁面存檔備份,存於網際網路檔案館)
- Flex Authority - Adobe Flex Developer site(頁面存檔備份,存於網際網路檔案館)
- Jesse Warden - Adobe Flex Developer Blog Site(頁面存檔備份,存於網際網路檔案館)
- Renaun Erickson - Adobe Flex Developer Blog Site(頁面存檔備份,存於網際網路檔案館)
- 完全利用FLEX開發的線上GIS網站(頁面存檔備份,存於網際網路檔案館)
- ReflexUtil(頁面存檔備份,存於網際網路檔案館) - 測試工具(開源) 運行時 為 Flex
- 緯度網 Flex 知識庫 - 提供圍繞ActionScript,Flash,Flex技術開發為主題的問答形知識庫(中文)