2008年10月11日星期六

完整、準確地把握Flash動態網站開發的知識體系(Flash網路開發用戶必讀)

完整、準確地把握Flash動態網站開發的知識體系

——Flash網路開發用戶必讀

[摘 要]

本文明確闡述了應用Flash和伺服器端軟體(包括Java、.NET、ASP、PHP、ColdFusion等)進行網路應用程式開發、除錯和部署的完整知識。

完備而充足:完全的技術基礎大公開、完全的中文解決方案大公開、完全的安全架構原理大公開、完全的Flash Remoting實現大公開、完全的應用案例大公開。對知識體系進行了總結歸納,建立一個邏輯的知識體系,以利於用戶快速、準確、完整地掌握它。

[關鍵字]

動態網站開發,網路三劍客,富媒體應用程式,用戶體驗,Flash Player,Flash,ActionScript,Flash Remoting,RIA,AMF-RPC,FMS,XML,XML-RPC,WDDX,SOAP,.NET,Java,PHP,ASP, Database,PHP for Flash 網站開發手札,Java for Flash 動態網站開發手札,.NET for Flash 動態網站開發手札,ASP for Flash 動態網站開發手札,More

[正 文]

“Flash動態網站開發”正是炙手可熱的 “資料驅動的富媒體應用程式”的核心,之所以這樣講,正是出於對用戶和技術的深入理解:

商業用戶需要的是低成本所帶來的高收益;而最終的消費者需要的是最佳的體驗。

Flash也許是通向最佳體驗的最佳應用之門。由Flash Player、伺服器端應用程式以及XML構建的架構我最喜歡稱之為網路三劍客(注意區別於網頁三劍客),它提供了使用Flash Player、XML和伺服器端應用程式建立下一代網路應用程式最迅速、最大限度節省投資和最具有挑戰性的方法組合,這一組合能夠滿足商業用戶和最終消費 者的需要。

為什麼是“Flash動態網站開發”?

為什麼?是啊,這是一個非常有趣的話題。近十幾年來,Internet以前所未有之勢使應用程式開發領域發生了根深蒂固的變化,許 多組織越來越依賴於由Internet及相關技術提供的數位資源和通訊通道。現在,在設計和開發應用程式時,幾乎所有人都會考慮如何最有效地結合與利用 Internet技術以便充分利用連接計算所帶來的好處。

[1]C/S到B/S結構

在過去的幾年,在這樣的網路應用程式開發過程中,開發人員都注意到了一種情況:那就是流覽器已經成為幾乎所有應用的標準用戶端,而 包含Web網頁、中間件和資料庫在內的三層架構構成了各種應用的標準支撐平臺,從根本上完成了C/S(客戶機/伺服器)結構到B/S(流覽器/伺服器)結 構應用模式的轉變。

在B/S結構應用模式中,必須仔細地看待由Web網頁、中間件和資料庫構成的三層架構。在這三層架構中:Web網頁處於 最頂層,代表著流覽器(或者說是用戶端Web動態和靜態內容的解釋器);最底層是應用程式中的原始資料,動態內容依賴於這些資料,這就是資料庫;中間件是 用來執行資料(業務)邏輯運算的組件,對於Microsoft.NET,這個組件是.vb、.cs等檔編譯而成的.dll程式集;對於Java,這個組件 是JavaBeans、EJB等Java類;對於ColdFusion,這個組件是CFC;對於PHP,這個組件是PHP類(PEAR);或者還應當包括 JSP、Servlet、CFM、ASP、ASPX、PHP等動態網頁。

[2]終端設備正在不斷的異化,虛擬機是大勢所趨

同時,也應當注意到,終端設備正在不斷的異化。可以流覽Internet的各類設備正在成幾何倍數地增長,如今移動電話、智慧型電 話、個人數位助理(PDA)、互動式電視系統或電話亭,甚至某些家用電器也能做到。為了能夠在不斷異化的終端設備上形成一致的流覽體驗,也為了不斷地降低 創作成本,人們都已經認識到,虛擬機已是大勢所趨,它正在不斷成為人們關注的目標。

[3]“富媒體”應用程式就是未來

與此同時,一種我們稱之為“富媒體”的應用程式逐漸開始升溫,“富媒體”的核心是位於用戶端的虛擬機,而Flash Player是其中的佼佼者。

有了Flash極富魅力的流媒體格式,有了ActionScript,便有了Flash影片應用程式,這是極富魅力的富媒體應用程式。在用戶端,承載該富媒體應用程式的是Flash Player。

正是由於Flash Player的出現使得C/S與B/S之間的界限變得模糊起來,因為使用Flash Player,你可以將Flash影片應用程式當作是C(客戶機)也可以當作是B(流覽器),而這就使得C/S與B/S逐漸走向融合。

[4]不可獲缺的創作環境和運行時

從FutureSplash Animator(Flash的前身)到Flash 8,Flash由一個基本動畫創作工具發展到一個完整的多媒體編著環境和網路互動開發環境,它已經是一個名副其實的整合開發環境(IDE)。Flash Player也從一個簡單的動畫解釋器發展成一個稱為富媒體用戶端(Rich Media Client)的東西。富媒體用戶端是一個在內容、通信以及應用程式上具有高度繼承性的瘦客戶(Thin-Client)環境,正如前述,這符合網際網路 發展的方向。

Flash Player是高度整合和極富擴充性的富媒體用戶端,所有的Flash影片應用程式都由Flash Player解釋。Flash Player不但可以作為流覽器的插件,而且還可以作為獨立的流覽器解釋Flash影片應用程式。

[5]Flash Player與Flash Remoting

與高度整合和極富擴充性的富媒體用戶端對應,我們也有了各種各樣的Flash Remoting技術:包括XML-RPC、WDDX、SOAP和AMF-RPC等,這是Flash的後端服務。

Flash動態網站開發的原理

Flash Player將請求和資料發送給後端伺服器應用程式,後端伺服器應用程式接收到請求,通過HTTP(或者其他的協議)將回應和運算資料發送給Flash Player,Flash Player作為前端解釋器對資料進行解析,並做出邏輯運算。這便是Flash動態網站開發的基本原理。

隨著應用的不斷深入,各種各樣便利的工具便不斷的應運而生:從Generator到FlashSQLComponentKit,從WDDX到XML-RPC,從SOAP到AMF-RPC,Flash在通向網路應用程式的道路上不斷攀登。

AMF-RPC,也就是眾所周知的Flash Remoting MX,它不是原有的Generator的更新,而是具有實現新功能的Flash後端伺服器組件,相比起來不可同日而語。它提供了一種基礎架構,使用該架構 可以很輕鬆的連接到一個應用程式開發人員要使用的遠端服務和WEB服務。Flash Remoting MX提供了一個強大但是非常簡單的程式模型和運行時,它大大簡化了Flash影片應用程式開發。使用Flash Remoting MX,開發者不需編寫任何封裝程式碼、proxy程式碼、資料配置程式碼,就可以很輕鬆的把ActionScript用戶端邏輯的連接到遠端服務。 Flash Remoting MX把精確定義的應用程式API和服務(或者整合在C#內,或者整合在VB內,或者整合在Java內,或者整合在ColdFusion內,或者整合在 PHP內)都傳遞給Flash影片應用程式,並作為ActionScript的API。

這是一件令人激動的事情,有了Flash Remoting MX,有了Flash Player,你可以輕鬆的開發出那種具有炫彩圖像用戶介面,並由資料驅動的應用程式來,而且可以部署到各種設備上——只要該設備安裝了Flash Player。

XML,它簡單的難以置信,但它也強大的難以置信。任何從事IT行業的工作人員都不能不瞭解它,任何從事應用軟體發展的人員都必須精通它——這一點並不難。

新的Flash創作環境和運行時已經將架構完全建立在XML之上:為了更好的利用XML文檔,ActionScript程 式語言內建了XML物件,可以使用XML物件載入和解析XML文檔,並可以將資料以XML格式發送到伺服器端;而且新的資料組件也都是以XML資料格式為 基礎的,這就使得開發環境更具誘惑力,更加符合產業發展的方向。

你可以在伺服器端使用多種方法接收從Flash影片應用程式傳遞的資料,也可以從伺服器端向Flash影片應用程式傳遞 資料。方法多種多樣,但都要使用我們稱之為“中間件”的東西,傳統的中間件包括JSP、ASP、CFM、PHP、ASP.NET等,這些都是WEB網頁。

Flash Media Server伺服器(簡稱FMS)的出現給全世界的人帶來一種全新的通訊方式。有了FMS,您可以參加即時網路會議;使用FMS,您可以在工作中進行協作以及通過Internet或企業Intranet共用資訊。

使用FMS和Flash Remoting MX的整合,從而可以輕鬆連接資料庫以及驅動應用程式伺服器以建立功能更強的應用程式,並將其融入到Flash Player當中,從而為終端用戶帶來全新的富媒體應用程式體驗。

現在你可以充分利用Flash Player的強大性能建立RIA(Rich Internet Application,富Internet應用程式),而不是枯燥的網頁加動態的圖片拼湊了。更值得一提的是,Flash Remoting MX已經成為Flash伺服器端策略的核心,不管你是使用Flash創作環境作為開發工具建立富Internet應用程式,還是使用FLEX建立富 Internet應用程式,Flash Remoting MX都是你必不可少的應用核心。

現在馬上出發

作者邀您訪問他的BLOG:http://zhang-yafei.spaces.live.com

Flash知識體系成員

是完整的知識體系,更是順承一致的知識體系。瞭解知識體系成員:

[1]【完整、準確地把握Flash動畫設計的知識體系

[2]【完整、準確地把握Flash ActionScript開發的知識體系

[3]【完整、準確地把握Flash動態網站開發的知識體系 Flash動態網站開發系列圖書


Flash動態網站開發




要瞭解Flash CS4 Professional,就經常訪問張亞飛的Blog
http://cn.zhang-yafei.com/
(簡體)
http://tw.zhang-yafei.com/
(繁體)

要正確地開發萬維網應用程式就必須瞭解《萬維網應用程式開發綱要》:

http://blog.csdn.net/zhang_yafei/archive/2008/06/22/2574348.aspx
(簡體)
http://zhang-yafei.spaces.live.com/blog/cns!5358FA09E8EB6188!1047.entry
(繁體)

要正確地認識Flash ActionScript 3.0開發,就必須首先閱讀:
飛痛都不能完整掌Flash
(簡體)
飛痛都不能完整掌Flash
(繁體)

要完整系統的學習Flash設計和開發,就必須閱讀有關Flash設計和開發的三個基本文件,並在學習過程中最終理解這三個基本檔的內容:

[01]《完整、系統的把握Flash動畫設計的知識體系》
[02]
《完整、系統的把握Flash ActionScript開發的知識體系》
[03]
《完整、系統的把握Flash動態網站開發的知識體系》
可以通過搜索引擎獲取它們。