使用Silverlight技術(shù)開(kāi)發(fā)Rich Internet Applications的研究-畢業(yè)論文_第1頁(yè)
使用Silverlight技術(shù)開(kāi)發(fā)Rich Internet Applications的研究-畢業(yè)論文_第2頁(yè)
使用Silverlight技術(shù)開(kāi)發(fā)Rich Internet Applications的研究-畢業(yè)論文_第3頁(yè)
使用Silverlight技術(shù)開(kāi)發(fā)Rich Internet Applications的研究-畢業(yè)論文_第4頁(yè)
使用Silverlight技術(shù)開(kāi)發(fā)Rich Internet Applications的研究-畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩52頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

使用Silverlight技術(shù)開(kāi)發(fā)Rich Internet Applications的研究本科畢業(yè)論文(科研訓(xùn)練、畢業(yè)設(shè)計(jì))題 目:使用Silverlight技術(shù)開(kāi)發(fā)Rich Internet Applications的研究 姓 名: 學(xué) 院:軟件學(xué)院 系:軟件工程 專 業(yè):軟件工程 年 級(jí): 學(xué) 號(hào): 指導(dǎo)教師(校內(nèi)): 職稱: 指導(dǎo)教師(校外): 職稱: 年 月 50摘 要Rich Internet Applications(RIA)技術(shù)在最近幾年以來(lái)發(fā)展突飛猛進(jìn),由于其發(fā)展尚處于早期階段,還擁有很廣闊的市場(chǎng)和發(fā)展空間。本文討論了RIA體系結(jié)構(gòu)與Client/Server,Browser/Server體系結(jié)構(gòu)的區(qū)別,回顧了RIA的發(fā)展過(guò)程,優(yōu)點(diǎn),不足之處和開(kāi)發(fā)RIA的各種技術(shù)。最后選取2008年3月5日由Microsoft發(fā)布的Silverlight 2.0測(cè)試版本,開(kāi)發(fā)了一個(gè)英語(yǔ)學(xué)習(xí)的Silverlight全站用例,來(lái)說(shuō)明Silverlight和RIA的開(kāi)發(fā)方式,闡述了它們的優(yōu)缺點(diǎn)以及可拓展空間。關(guān)鍵詞:富英特網(wǎng)程序;微軟銀光;英語(yǔ)學(xué)習(xí)軟件AbstractRich Internet Applications (RIA) had conquered quite a large market of the Web application in the last few years. For this technology is still in its initial stages, it has a bright future and need to be standardized in the future. Here in the thesis, we introduced the main differences among Client/Server, Browser/Server and RIA architectures, discussed the advantages and disadvantages of RIA, and listed a few developing technologies to build RIA. Then we choose the Microsoft Silverlight 2.0 Beta, which was lately released on March 5, 2008, as the core technology to build an English Study Website, illustrating the wide space that Silverlight and RIA might go.Key words: RIA;Microsoft Silverlight;English Study Software.目 錄第一章引言11.1 Client/Server結(jié)構(gòu)11.2 Web程序和Browser/Server結(jié)構(gòu)11.3 本章小結(jié)2第二章 Rich Internet Application富英特網(wǎng)程序32.1 RIA的發(fā)展歷史32.2 RIA的優(yōu)點(diǎn)42.3 RIA的不足之處52.4 RIA的發(fā)展現(xiàn)狀82.5 開(kāi)發(fā)RIA的各種技術(shù)8Adobe Flash,Adobe Flex和Adobe AIR8Backbase9Curl9Google的GWT Framework10Java Applets10Java程序10JavaFX11JavaScript/Ajax11Microsoft ActiveX11Microsoft Silverlight11Mozilla Prism12OpenLaszlo12REBOL 2.6和Smalltalk的Seaside122.6 本章小結(jié)13第三章 Microsoft Silverlight143.1 Silverlight概述143.2 Silverlight的兼容性163.3 Silverlight發(fā)布的版本19Silverlight 1.019Silverlight 2.0203.4 Silverlight開(kāi)發(fā)工具223.5 本章小結(jié)24第四章 Silverlight開(kāi)發(fā)項(xiàng)目實(shí)例Pancake English254.1 Pancake English項(xiàng)目簡(jiǎn)介254.1.1 現(xiàn)有英語(yǔ)學(xué)習(xí)軟件分析254.1.2 Pancake English的優(yōu)勢(shì)254.2 項(xiàng)目詳細(xì)介紹264.2.1 基于記憶遺忘曲線的背單詞功能264.2.2 多媒體英漢詞典功能304.2.3 按字幕定位的媒體播放器334.2.4 基于媒體播放器的聽(tīng)寫(xiě)功能和字幕編輯功能364.2.5 服務(wù)器端設(shè)計(jì)404.3 本章小結(jié)44第五章 結(jié)論465.1 Pancake English擴(kuò)展前景465.1.1 Pancake English的適用場(chǎng)合465.1.2 Silverlight Beta版本的局限性465.1.3 Pancake English在移動(dòng)終端上的部署475.2 Silverlight開(kāi)發(fā)未來(lái)47致 謝48參考文獻(xiàn)49ContentsChapter 1 Overview11.1 Client/Server11.2 Web Application and Browser/Server11.3 Summary2Chapter 2 Rich Internet Application32.1 History of RIA32.2 Benefits of RIA42.3 Shortcomings of RIA52.4 Current Status of Development82.5 List of RIA Platforms and Approaches8Adobe Flash,Adobe Flex and Adobe AIR8Backbase9Curl9Googles GWT Framework10Java Applets10Java Applications10JavaFX11JavaScript/Ajax11Microsoft ActiveX11Microsoft Silverlight11Mozilla Prism12OpenLaszlo12REBOL 2.6 and Seaside for Smalltalk122.6 Summary13Chapter 3 Microsoft Silverlight143.1 Overview of Silverlight143.2 Compatibility163.3 Releases19Silverlight 1.019Silverlight 2.0203.4 Development Tools223.5 Summary24Chapter 4 A Silverlight Project-Pancake English254.1 Overview of Pancake English254.1.1 Current status of English Study Softwares254.1.2 Advantages of Pancake English254.2 Project Details264.2.1 Words Function Based on the Forgetting Curve264.2.2 Multi-Media Dictionary304.2.3 Subtitle-Based Media Player334.2.4 Dictation and Subtitle Edit364.2.5 Design of Server404.3 Summary44Chapter 5 Conclusion465.1 Pancake Englishs Future465.1.1 What can Pancake English Do465.1.2 Limitaion of Silverlight Beta465.1.3 Pancake English on Mobiles475.2 Silverlights Future47Acknowledgement48References49第一章 引言1.1 Client/Server結(jié)構(gòu)Client/Server(C/S),即我們所熟知的客戶機(jī)/服務(wù)器結(jié)構(gòu),屬于計(jì)算機(jī)軟件體系結(jié)構(gòu)的一種。它通過(guò)將任務(wù)合理分配到Client端和Server端,充分利用兩端的硬件環(huán)境的優(yōu)勢(shì),降低系統(tǒng)的通訊開(kāi)銷,同時(shí)增強(qiáng)了數(shù)據(jù)的安全性。Client/Server這種說(shuō)法首次出現(xiàn)于19世紀(jì)80年代,代表網(wǎng)絡(luò)中的各個(gè)終端電腦,而直到80年代末期,C/S模型的概念才廣泛為人們所接受。我們?nèi)粘I钪兴褂玫拇蟛糠肿烂鎽?yīng)用程序即屬于C/S結(jié)構(gòu),譬如用于及時(shí)通訊聊天所使用的Windows Live Messenger(MSN),或各種類型的網(wǎng)絡(luò)游戲譬如夢(mèng)幻西游,等等。Client端程序在用戶的個(gè)人電腦中運(yùn)行,而各項(xiàng)服務(wù)程序則在指定Server中運(yùn)行。使用Client/Server結(jié)構(gòu)開(kāi)發(fā)的應(yīng)用程序交互性較強(qiáng),網(wǎng)絡(luò)通信量較低,響應(yīng)速度快,方便處理大量數(shù)據(jù),同時(shí)C/S結(jié)構(gòu)的程序也具有較為優(yōu)良的用戶界面。但是,也因其結(jié)構(gòu)特點(diǎn),C/S結(jié)構(gòu)的程序往往具有如下的缺陷:l 開(kāi)發(fā)不夠靈活,兼容性較弱,對(duì)于不同的應(yīng)用及環(huán)境,無(wú)論是Server還是Client端都需要開(kāi)發(fā)特定的軟件;l 軟件的維護(hù)開(kāi)銷較大,需要做到Server和Client同時(shí)維護(hù),且任何Server端的修改都會(huì)導(dǎo)致Client端相應(yīng)的修改或更新;l 部署和實(shí)現(xiàn)不夠靈活,必須安裝Client端,局限于固定用戶,缺少通用性。1.2 Web程序和Browser/Server結(jié)構(gòu)在對(duì)C/S不斷改進(jìn)的過(guò)程中,同時(shí)伴隨Internet技術(shù)的發(fā)展,Browser/Server(B/S)體系結(jié)構(gòu)應(yīng)運(yùn)而生。B/S結(jié)構(gòu)將絕大部分的處理保留在Server端,Client端只需通過(guò)Browser(瀏覽器)對(duì)Server端生成的標(biāo)準(zhǔn)格式文件進(jìn)行解析,譬如我們平時(shí)使用的搜索引擎,各種新聞網(wǎng)站,以及電子郵件服務(wù)等。這種方式下只需對(duì)Server端進(jìn)行維護(hù),用戶無(wú)需了解Server端底層究竟采取了什么樣的技術(shù),Server端的修改、升級(jí)也不需要Client完成任何更新。同時(shí),Web 應(yīng)用程序的部署十分靈活,無(wú)論是Windows的用戶或者M(jìn)ac系統(tǒng)用戶,都可以通過(guò)其運(yùn)行平臺(tái)上不同的瀏覽器,體驗(yàn)完全相同的功能服務(wù)。B/S結(jié)構(gòu)在擁有其部署靈活,維護(hù)相對(duì)較簡(jiǎn)單等優(yōu)點(diǎn)的同時(shí),也具有這樣一些缺陷:l Web應(yīng)用程序?qū)τ诜?wù)的每一次請(qǐng)求都需要刷新頁(yè)面,即任何交互都是一次遠(yuǎn)程的傳輸,占用了相當(dāng)大的網(wǎng)絡(luò)資源;l Web程序與用戶交互性較差,同時(shí)也無(wú)法與其他應(yīng)用程序進(jìn)行交互;l 由于頁(yè)面刷新所占用的資源較大,無(wú)法進(jìn)行大量的數(shù)據(jù)處理,開(kāi)發(fā)者無(wú)法對(duì)其界面做大量的修飾,導(dǎo)致了Web應(yīng)用程序在界面導(dǎo)上的單調(diào),損失了很大一部分的用戶。1.3 本章小結(jié)隨著C/S與B/S兩種技術(shù)各自的不斷發(fā)展和交互運(yùn)用,已有各種技術(shù)出現(xiàn)以彌補(bǔ)兩種結(jié)構(gòu)各自的缺陷。而近幾年來(lái)出現(xiàn)的RIA(Rich Internet Applications,富英特網(wǎng)應(yīng)用程序),結(jié)合了C/S與B/S的優(yōu)點(diǎn),盡管其發(fā)展還不完善,但卻在很大程度上革新了傳統(tǒng)Web應(yīng)用程序的開(kāi)發(fā)過(guò)程與使用方式,同時(shí)也成為繼C/S和B/S兩大傳統(tǒng)軟件體系結(jié)構(gòu)之后的第三種軟件開(kāi)發(fā)體系結(jié)構(gòu)。本文將在第二章中對(duì)RIA做具體介紹。第二章 Rich Internet Application富英特網(wǎng)程序Rich Internet Applications(RIA)是指具有C/S程序結(jié)構(gòu)特征的Web應(yīng)用程序。RIA將數(shù)據(jù)操作保留在Server端,同時(shí)把部分必要的用戶界面等操作留在客戶端(即瀏覽器)中運(yùn)行,以減少網(wǎng)絡(luò)開(kāi)銷,提供優(yōu)質(zhì)和交互性更強(qiáng)的圖形用戶界面。RIA通常運(yùn)行在瀏覽器中,不需要安裝其他軟件,有時(shí)也需要用戶瀏覽器安裝特定的語(yǔ)言解釋器,其功能類似于Java語(yǔ)言的虛擬機(jī),也即為我們平時(shí)說(shuō)的“插件”。插件一旦安裝,便可以解釋執(zhí)行同類型的所有功能。2.1 RIA的發(fā)展歷史Rich Internet Application的說(shuō)法首次出現(xiàn)于Macromedia公司2002年3月份的白皮書(shū)1中,而富英特網(wǎng)應(yīng)用程序的概念則在更早的時(shí)候就已出現(xiàn),之前曾被表述為:l 1998年左右,Microsoft公司,稱之為遠(yuǎn)程腳本(Remote Scripting);l 2000年8月,F(xiàn)orrester Research,X Internet;l Rich (web) Client(胖(網(wǎng)絡(luò))客戶端);l Rich web application 富網(wǎng)絡(luò)應(yīng)用程序.傳統(tǒng)的web應(yīng)用程序主要圍繞Client和Server兩端的通信運(yùn)行,這種情況下,所有的處理過(guò)程都在Server端完成,而這里的Client,所謂的瘦客戶端(Thin Client),只需顯示靜態(tài)的HTML頁(yè)面內(nèi)容。這種結(jié)構(gòu)最大的缺陷是,用戶的一切服務(wù)請(qǐng)求都必須傳回服務(wù)器,由服務(wù)器處理后生成新的頁(yè)面,再傳回瀏覽器顯示。RIA通過(guò)在客戶端執(zhí)行的指令,可以直接與用戶進(jìn)行交互而避免了這種相對(duì)較慢的同步模式。RIA對(duì)于傳統(tǒng)Web程序的革新,有點(diǎn)類似于Client/Server結(jié)構(gòu)對(duì)于終端/主機(jī)模式的進(jìn)化。由于Internet標(biāo)準(zhǔn)本身為了適應(yīng)更好的應(yīng)用也在不斷的發(fā)展變化,所以我們對(duì)于何種應(yīng)用程序?qū)儆赗IA何種不屬于并沒(méi)有一個(gè)明確的劃分。但所有的RIA都具有這樣的一個(gè)特點(diǎn):它們都引進(jìn)了一種稱為客戶端引擎(Client Engine)的中間層代碼,運(yùn)行于用戶和服務(wù)器之間??蛻舳艘嫱ǔT诜?wù)實(shí)例化時(shí)被部分下載,程序運(yùn)行過(guò)程中繼續(xù)補(bǔ)充下載,作為瀏覽器功能的一種延伸,負(fù)責(zé)渲染程序用戶界面以及與服務(wù)器交互。RIA提供的功能與其所運(yùn)行于的客戶端使用的系統(tǒng)相關(guān)??偟膩?lái)說(shuō),設(shè)計(jì)者設(shè)計(jì)客戶端引擎的目的是為了提供某種功能,以提升用戶界面效果,或者增強(qiáng)特定的交互能力,而這些功能是傳統(tǒng)的Web程序無(wú)法做到的。此外,瀏覽器與服務(wù)器傳統(tǒng)的同步模式無(wú)法改變,而客戶端引擎能夠做到與服務(wù)器的異步傳輸,即用戶直接與客戶段引擎交互,而客戶段引擎直接與Server交互。2.2 RIA的優(yōu)點(diǎn)盡管開(kāi)發(fā)運(yùn)行于瀏覽器上的程序要比普通Web程序或是桌面應(yīng)用程序要復(fù)雜,而且其效果卻并不一定會(huì)比C/S結(jié)構(gòu)的程序好,RIA卻擁有著它不可比擬的優(yōu)點(diǎn):l 安裝簡(jiǎn)單:RIA的安裝和更新過(guò)程的總開(kāi)銷遠(yuǎn)比桌面應(yīng)用程序或操作系統(tǒng)本機(jī)程序要小得多,如Microsoft Silverlight插件,大小約為2MB左右;l 程序的更新和升級(jí)是自動(dòng)的或者對(duì)用戶透明;l 用戶可以使用任意計(jì)算機(jī)通過(guò)網(wǎng)絡(luò)連接來(lái)使用程序;l 已出現(xiàn)一些程序支持RIA的離線使用,譬如Adobe AIR,Google Gears等;l RIA的跨操作系統(tǒng)特性保證了用戶對(duì)產(chǎn)品使用的連貫性,比如某用戶在公司使用Windows系統(tǒng),在家中使用Mac系統(tǒng),而兩處所使用的RIA程序在界面和功能上幾乎完全一致;l 基于網(wǎng)絡(luò)的應(yīng)用程序比運(yùn)行于本機(jī)的C/S的Client端被病毒入侵的可能性小。對(duì)于客戶端引擎的引進(jìn),使得RIA具有了如下的特征:l 更豐富:RIA提供了標(biāo)準(zhǔn)瀏覽器使用傳統(tǒng)HTML技術(shù)所無(wú)法實(shí)現(xiàn)的用戶界面行為,諸如控件的拖放(drag-and-drop),使用滑動(dòng)條(Slider)對(duì)數(shù)據(jù)進(jìn)行控制等,這些計(jì)算都在客戶端本機(jī)中運(yùn)行而無(wú)需傳回服務(wù)器處理。l 響應(yīng)更快:相比于傳統(tǒng)B/S結(jié)構(gòu)中所有處理都須回傳服務(wù)器的模式,RIA在本機(jī)處理部分操作的模式使得程序?qū)τ谟脩舻慕换ロ憫?yīng)更快。最為復(fù)雜的RIA能夠提供與C/S程序外觀相媲美的使用環(huán)境,同時(shí)也可以做到:l Client端與Server端的平衡:由于將部分處理轉(zhuǎn)移到了客戶端,瀏覽器的負(fù)擔(dān)相應(yīng)減弱,使得同一Server可以同時(shí)處理更多的服務(wù)請(qǐng)求;l 異步傳輸:客戶端引擎可以在用戶未發(fā)出命令前與服務(wù)器進(jìn)行傳輸,這使得用戶對(duì)于頁(yè)面的操作與服務(wù)器形成異步效果。這種技術(shù)的本質(zhì)是在用戶調(diào)用數(shù)據(jù)前事先傳入數(shù)據(jù),減少了用戶等待的時(shí)間,因此提高響應(yīng)速度。Google Map便是使用的這種模式,在用戶放大圖像之前,事先讀入調(diào)整圖片。l 網(wǎng)絡(luò)效率:特別設(shè)計(jì)的客戶端引擎可以判斷數(shù)據(jù)中哪些必須回傳服務(wù)器而那些可以不用回傳,從而加快了單個(gè)請(qǐng)求的響應(yīng)速度,降低了整個(gè)網(wǎng)絡(luò)的使用負(fù)載。但是,由于異步傳輸和事先讀取數(shù)據(jù)技術(shù)的使用,這項(xiàng)優(yōu)點(diǎn)很有可能被中和甚至是反而加重網(wǎng)絡(luò)的負(fù)擔(dān)。比如代碼并不能事先預(yù)測(cè)用戶下一步動(dòng)作,為了提升響應(yīng)速度,就必須下載多余的數(shù)據(jù)以方便調(diào)用。2.3 RIA的不足之處RIA同時(shí)也具有如下的一些缺陷:l 沙盒(sandbox)效應(yīng):某些RIA必須運(yùn)行于特定的瀏覽器中,稱之為沙盒,限制了程序與系統(tǒng)其他資源的交互,若對(duì)于資源使用的假設(shè)錯(cuò)誤,則會(huì)造成程序出錯(cuò);l 腳本禁止:一些RIA必須通過(guò)腳本程序來(lái)運(yùn)行,若用戶禁止了本機(jī)瀏覽器中的腳本運(yùn)行,則會(huì)造成整個(gè)RIA無(wú)法運(yùn)行;l 客戶端處理速度:為了實(shí)現(xiàn)跨平臺(tái)性,一些RIA使用了諸如JavaScript等的解釋性語(yǔ)言,因此會(huì)帶來(lái)運(yùn)行效果上的損失,而這些損失對(duì)于移動(dòng)終端設(shè)備來(lái)說(shuō),意義重大。而對(duì)于像Java這樣的編譯文件,與傳統(tǒng)的編譯語(yǔ)言可媲美,則不存在這樣的問(wèn)題。如Flash,Curl和Silverlight,也是使用它們各自的插件來(lái)運(yùn)行已編譯的文件。l 腳本下載:RIA不需要普通意義上的“安裝”過(guò)程,但它的客戶端智能(即客戶端引擎)卻需要從服務(wù)器端獲取,盡管過(guò)程是自動(dòng)的,但也需要下載至少一次。依據(jù)所需的文件的大小和類型,腳本的下載時(shí)間也許會(huì)很長(zhǎng)。RIA的開(kāi)發(fā)人員可以通過(guò)壓縮技術(shù)或?qū)⑾螺d時(shí)間分部在一個(gè)程序的多個(gè)頁(yè)面中來(lái)減少用戶的等待時(shí)間; l 完整性的丟失: 若程序建立在X/HTML的基礎(chǔ)上,則容易發(fā)生兩者目標(biāo)的沖突,因?yàn)槌绦虻哪繕?biāo)是控制功能和表現(xiàn),而X/HTML的目標(biāo)是為達(dá)到標(biāo)準(zhǔn)化而放棄功能和表現(xiàn)。DOM為X/HTML提供了創(chuàng)建RIA的可能性,但是卻無(wú)法保證絕對(duì)正確的功能。因?yàn)镽IA的用戶可以調(diào)整程序的基礎(chǔ)結(jié)構(gòu)并重寫(xiě)功能和表現(xiàn),而這樣可能會(huì)引起在客戶端的運(yùn)行錯(cuò)誤。當(dāng)然,新近出現(xiàn)的RIA技術(shù)可以通過(guò)限制客戶端修改資源的權(quán)限來(lái)減少這樣的問(wèn)題。(本機(jī)運(yùn)行的程序則不會(huì)出現(xiàn)這樣的問(wèn)題,因?yàn)檫@種程序?qū)λ兴玫降馁Y源都作了定義。)l 對(duì)于搜索引擎不可見(jiàn):搜索引擎可能無(wú)法檢索到程序中的文本內(nèi)容。Microsoft Silverlight引入的控制矢量圖形的XAML文件則從某方面解決了這個(gè)問(wèn)題,寫(xiě)入XAML的文檔對(duì)于搜索引擎是可見(jiàn)的,但是由代碼生成的動(dòng)態(tài)控件中的文檔,盡管也是使用XAML語(yǔ)言,但卻無(wú)法被搜索到。l 依賴于網(wǎng)絡(luò)連接:盡管理想中的代替C/S結(jié)構(gòu)的網(wǎng)絡(luò)程序可以讓人在任何地方都能聯(lián)網(wǎng)使用,而離線使用的RIA程序仍舊需要特殊的平臺(tái),如Adobe AIR,Google gears。l 可使用性:RIA存在多個(gè)網(wǎng)絡(luò)可用性的問(wèn)題,而其中最為人所知的是屏幕閱讀器從HTML中的JavaScript中讀取動(dòng)態(tài)變化需要相當(dāng)長(zhǎng)的一段時(shí)間。l 無(wú)部署:除了Adobe AIR技術(shù)之外,幾乎所有的RIA都不像C/S程序那樣擁有部署。軟件開(kāi)發(fā)的復(fù)雜度:RIA技術(shù)的出現(xiàn)同時(shí)引入了網(wǎng)絡(luò)應(yīng)用程序開(kāi)發(fā)上的復(fù)雜性。傳統(tǒng)的Web程序的建立只需使用標(biāo)準(zhǔn)的HTML,擁有相對(duì)簡(jiǎn)單的軟件體系結(jié)構(gòu),構(gòu)建時(shí)也只需使用有限的開(kāi)發(fā)模式,更容易設(shè)計(jì)和操作。而對(duì)于要開(kāi)發(fā)RIA的個(gè)人或企業(yè),他們則面臨著更為復(fù)雜的設(shè)計(jì),測(cè)試,測(cè)量和支持。使用RIA技術(shù)面臨著幾個(gè)新的服務(wù)層級(jí)管理(Service Level Management,SLM)問(wèn)題,而這些都是至今還未解決的。SLM旨在減少對(duì)于程序開(kāi)發(fā)者的關(guān)注,從其誕生以來(lái)鮮有人問(wèn)津,但對(duì)于Web程序的網(wǎng)絡(luò)傳輸至關(guān)重要。RIA程序結(jié)構(gòu)的復(fù)雜性2表現(xiàn)在以下幾個(gè)方面:l 越來(lái)越大的復(fù)雜度使得開(kāi)發(fā)過(guò)程越來(lái)越艱難:將代碼轉(zhuǎn)移到客戶端的方法給與了程序設(shè)計(jì)者和開(kāi)發(fā)者更大的想象空間。但這也使得開(kāi)發(fā)過(guò)程變得艱難,增加了可能出現(xiàn)的bug的數(shù)量,使得軟件的測(cè)試工作相應(yīng)變得復(fù)雜,而這些復(fù)雜性延長(zhǎng)了軟件的開(kāi)發(fā)過(guò)程。在使用Web程序框架的過(guò)程中可以中和RIA這方面的問(wèn)題,但是持續(xù)增長(zhǎng)的軟件解決方案復(fù)雜性同時(shí)也增加了軟件測(cè)試的復(fù)雜度,即增加了需要測(cè)試的用例的數(shù)量。而未經(jīng)完整測(cè)試的程序在質(zhì)量和可信度上都會(huì)大打折扣。當(dāng)然,同樣的懷疑也存在于其他的技術(shù)中。比如19世紀(jì)80年代蘋(píng)果公司和微軟公司分別發(fā)布GUI時(shí),甚至是福特公司宣布T模型時(shí),都存在過(guò)這樣的疑問(wèn)。不過(guò),人類具有解決困難的天性,若是幾十年內(nèi)解決不了,百年之后也必定能夠解決。l RIA破壞了網(wǎng)頁(yè)程序的標(biāo)準(zhǔn)化:傳統(tǒng)的Web程序是一組連續(xù)的Web網(wǎng)頁(yè),每一頁(yè)都需要一個(gè)下載,由HTTP的GET功能獲取。這樣的模型可以被稱之為網(wǎng)頁(yè)標(biāo)準(zhǔn)化。而RIA為了達(dá)到更好的交互性用戶界面,通過(guò)與Server的異步傳輸破壞了這種模型。在RIA中,為了提前取得數(shù)據(jù),而使下載頁(yè)面所需要的時(shí)間與用戶所需求的資源的真實(shí)相應(yīng)時(shí)間不符。為了取得用戶與程序交互的真實(shí)時(shí)間,必須使用新型的測(cè)試技術(shù)。而這樣的技術(shù)還未出現(xiàn),所以RIA的開(kāi)發(fā)者不得不為SLM提供相應(yīng)的代碼來(lái)測(cè)試交互時(shí)間。l 異步通訊使得問(wèn)題的隔離變得困難:自相矛盾的是,為了提升程序的交互性,異步通訊使得程序的測(cè)試,理解,報(bào)告和管理的交互性變?nèi)?。一些RIA從第一張頁(yè)面開(kāi)始后便不需要再使用HTTP的GET功能,通過(guò)異步傳輸來(lái)初始化和下載其后的所有頁(yè)面。一些RIA的客戶端引擎被設(shè)計(jì)為一直不斷的下載內(nèi)容來(lái)更新界面,或者服務(wù)器會(huì)一直不停的向客戶端瀏覽器發(fā)送內(nèi)容更新。這樣一來(lái),所謂的頁(yè)面下載就不再“可控制”,而這樣的程序則是無(wú)法刷新的。這些復(fù)雜度使得程序的測(cè)試更加困難,對(duì)于子程序響應(yīng)時(shí)間的測(cè)試也無(wú)法完成,而這一點(diǎn)對(duì)問(wèn)題隔離和服務(wù)層級(jí)管理相當(dāng)重要?,F(xiàn)有的一些Web程序測(cè)試工具也只會(huì)將這樣的程序看作單一頁(yè)面,或不相關(guān)的一組服務(wù)器活動(dòng),而這兩者都無(wú)法真實(shí)表現(xiàn)這一層級(jí)程序的活動(dòng)。l 客戶端引擎使得真實(shí)響應(yīng)時(shí)間無(wú)法測(cè)量:對(duì)于傳統(tǒng)的網(wǎng)絡(luò)程序,測(cè)量軟件會(huì)安裝在客戶端或靠近服務(wù)器的某臺(tái)機(jī)器上,以測(cè)量TCP和HTTP級(jí)別的網(wǎng)絡(luò)通訊量。由于這些協(xié)議的同步性且可預(yù)測(cè),一個(gè)包探測(cè)器就可以閱讀和翻譯包級(jí)別的數(shù)據(jù),然后通過(guò)跟蹤HTTP消息和TCP包的相應(yīng)時(shí)間來(lái)推測(cè)用戶的體驗(yàn)響應(yīng)時(shí)間。但是RIA體系結(jié)構(gòu)降低了這種包探測(cè)性的功能,因?yàn)榭蛻舳艘娲蚱屏擞脩艉头?wù)器的通訊,將其一分為二。這里劃分后的兩個(gè)通訊循環(huán)都很重要,因?yàn)槿我庖粋€(gè)都可以單獨(dú)使用,而兩者之間的交互構(gòu)成了程序的各種功能。但是這樣的交互完全依靠設(shè)計(jì),無(wú)法由任何測(cè)量工具來(lái)推測(cè)。所以,RIA最為完成的測(cè)量工具都只能通過(guò)安裝在客戶端的工具來(lái)觀察者兩個(gè)通訊循環(huán)。2.4 RIA的發(fā)展現(xiàn)狀RIA的發(fā)展尚處于早期階段,用戶和開(kāi)發(fā)者都還沒(méi)有完全的接受這樣技術(shù)。在其發(fā)展過(guò)程中,仍舊存在如下的限制急需解決:l 瀏覽器的兼容性問(wèn)題:很多RIA都需要借助現(xiàn)代的瀏覽器來(lái)運(yùn)行,高級(jí)的JavaScript必須跟RIA一同運(yùn)行在允許執(zhí)行XMLHTTPRequest的客戶端瀏覽器交流中,且需要DOM Scripting和高級(jí)CSS技術(shù)的支持。l 網(wǎng)絡(luò)標(biāo)準(zhǔn):不同的瀏覽器使得開(kāi)發(fā)跨瀏覽器的RIA變得復(fù)雜,而自從Java 1.1過(guò)后的Java平臺(tái)的通用性變得越來(lái)越好,使用Java applet開(kāi)發(fā)的RIA也取得了同樣的的通用性。l 開(kāi)發(fā)工具:像諸如Ajax Frameworks,Curl,Adobe Flex和微軟公司Silverlight等為開(kāi)發(fā)RIA提供了完整的開(kāi)發(fā)環(huán)境。l 可使用性:附加的交互性可能會(huì)需要特定的技術(shù)支持,而使用這些技術(shù)會(huì)帶來(lái)程序可用性的限制。l 用戶適應(yīng)性:一些已經(jīng)適應(yīng)了標(biāo)準(zhǔn)網(wǎng)絡(luò)程序的用戶也許會(huì)對(duì)一些瀏覽器功能不適應(yīng),比如“Back”操作的效果會(huì)與傳統(tǒng)網(wǎng)絡(luò)程序大相徑庭。2.5 開(kāi)發(fā)RIA的各種技術(shù)Adobe Flash,Adobe Flex和Adobe AIRAdobe Flash屬于開(kāi)發(fā)RIA的一種特殊技術(shù),該技術(shù)支持跨平臺(tái),能夠開(kāi)發(fā)功能較強(qiáng)的程序界面。Adobe Flex基于XML語(yǔ)言,提供了通過(guò)編譯MXML開(kāi)發(fā)用戶界面的框架。Adobe Flex開(kāi)發(fā)的框架文件被編譯為SWF文件,運(yùn)行于Adobe Flash Player中。Adobe公司同時(shí)發(fā)布了Adobe AIR(Adobe Integrated Runtime),是獨(dú)立于操作系統(tǒng)的一個(gè)運(yùn)行時(shí)平臺(tái)。Adobe AIR允許Flash Player和Ajax程序安裝/部署在用戶的電腦之中,類似于傳統(tǒng)的桌面應(yīng)用程序。BackbaseBackbase是一種基于Ajax的RIA框架,用于開(kāi)發(fā)基于各種標(biāo)準(zhǔn)的RIA??蛻舳诉\(yùn)行一個(gè)普通的瀏覽器,通過(guò)使用Java,PHP,.Net,Perl或XML/XSLT技術(shù)以結(jié)合現(xiàn)有的表現(xiàn)層。Backbase Visual Ajax Builder是一種WYSIWYG可視化RIA編輯器,可用性等同于Eclipse插件。Backbase提供了JSP版本使得RIA的開(kāi)發(fā)能夠符合JSF(Java Server Faces)標(biāo)準(zhǔn)。CurlCurl誕生于19世界90年代的MIT,最初是作為一項(xiàng)研發(fā)項(xiàng)目,其商用價(jià)值由Curl公司開(kāi)發(fā),于2000年發(fā)布了第一個(gè)版本?,F(xiàn)今發(fā)布的最新版本為6.0,可用于Windows,Linux,和Mac系統(tǒng)上。Curl開(kāi)發(fā)不需要特定的服務(wù)器端構(gòu)件,任意服務(wù)器都可使用。Curl提供了一組豐富的特性,但又相對(duì)易于使用,它允許不同背景的開(kāi)發(fā)者來(lái)開(kāi)發(fā)程序的不同層級(jí),如從簡(jiǎn)單的類似于HTML格式的通用語(yǔ)言,到復(fù)雜的基于對(duì)象的編程。免費(fèi)的Curl插件大小為10MB,寬帶用戶可以很方便的下載使用。其插件式的體系結(jié)構(gòu)優(yōu)勢(shì)表現(xiàn)在,Curl applets可在任何平臺(tái),任何瀏覽器中以相同的方式運(yùn)行,當(dāng)然也不排除一些瀏覽器提供了特殊的RIA功能。為了保證運(yùn)行速度,Curl applets被編譯成機(jī)器語(yǔ)言,而各種各樣的緩存技術(shù)也加快了程序的加載速度。在非商業(yè)用途,以及某些商業(yè)用途中,Curl的使用是免費(fèi)的,有償?shù)钠髽I(yè)級(jí)的開(kāi)發(fā)包提供了附加的企業(yè)級(jí)開(kāi)發(fā)功能。Curl支持開(kāi)發(fā)大型復(fù)雜軟件的軟件工程,且與其他技術(shù)相比,使用了相對(duì)少量的代碼。有關(guān)比較測(cè)試證明,使用Curl開(kāi)發(fā)的程序所用到的代碼是使用Adobe Flex和Ajax開(kāi)發(fā)相同程序所需代碼的三分之一。Curl在很多年前就已經(jīng)擁有了所謂“分離程序”的特性,即像Adobe AIR那樣,可以瀏覽器窗口中獨(dú)立運(yùn)行,支持離線使用。事實(shí)上,開(kāi)發(fā)Curl使用的Curl IDE便是用Curl技術(shù)本身構(gòu)建的。Google的GWT Framework由Google于2006年發(fā)布的Google Web Toolkit,也稱為GWT,允許開(kāi)發(fā)和測(cè)試使用JavaScript和Ajax編寫(xiě)的RIA。GWT編程用例圍繞著使用Java邏輯來(lái)編寫(xiě)用戶界面,等同于Swing或AWT模型,然后使用GWT編譯器將該邏輯翻譯成跨瀏覽器的JavaScript。由于是專門為Java開(kāi)發(fā)者設(shè)計(jì)的,GWT可以使用現(xiàn)有的工具如Eclipse來(lái)進(jìn)行Java編程,更新,編譯和單元測(cè)試,而不需要JavaScript或?yàn)g覽器DOM不規(guī)則性的特殊知識(shí),當(dāng)然,如有必要,手寫(xiě)的JavaScript也可在GWT中運(yùn)行。Java AppletsJava小程序運(yùn)行于標(biāo)準(zhǔn)的HTML頁(yè)面,在頁(yè)面被打開(kāi)之后自動(dòng)運(yùn)行,在其設(shè)計(jì)的區(qū)域之內(nèi),其功能可以直接表現(xiàn)在屏幕上,其功效就像音響,鍵盤和鼠標(biāo) 那樣,在網(wǎng)絡(luò)上提供實(shí)時(shí)的交流。Java程序基于Java的RIA允許瀏覽器內(nèi)部打開(kāi)程序,同時(shí)也提供了使用集成于桌面的Java Web Start方式打開(kāi)。Java RIA的優(yōu)勢(shì)在于,它可以使用由Java平臺(tái)提供的全部特性,例如更為豐富的編程功能,2D和3D圖形技術(shù),離線功能等。Java技術(shù)早已被廣泛使用,在商業(yè)和開(kāi)源方面都擁有大量可使用的平臺(tái)類庫(kù),在任何系統(tǒng)下都有相應(yīng)的支持。Java支持的RIA,最大的弱點(diǎn)便是對(duì)于多媒體的支持,Java 6 Updates N在這方面有一些解決方案,如對(duì)于開(kāi)始時(shí)間和下載大小的控制,而且Sun公司預(yù)計(jì)在2008年第二個(gè)季度發(fā)布的更新中,會(huì)對(duì)多媒體做更多的支持?,F(xiàn)有的支持Java RIA的框架包括基于XML框架的Swixml,Canoos,UltraLightClient等。JavaFXSun公司的Microsystems已經(jīng)發(fā)布了JavaFX,是一組基于Java的專用于提供一致性體驗(yàn)的多媒體技術(shù),包括桌面應(yīng)用程序,網(wǎng)絡(luò)程序,移動(dòng)設(shè)備,和DB播放器。JavaFX平臺(tái)包含了JavaFX腳本和JavaFX Mobile。作為Sun公司重?fù)屨糝IA市場(chǎng)的重要項(xiàng)目,JavaFX腳本允許使用類似于SVG的句法快速開(kāi)發(fā)2D接口。Sun公司也準(zhǔn)備將JavaFX腳本作為開(kāi)源項(xiàng)目,但JavaFX Mobile將會(huì)用于商業(yè)用途。JavaScript/Ajax第一個(gè)允許在客戶端使用代碼的技術(shù)便是JavaScript,盡管在一開(kāi)始其功能相當(dāng)局限,但結(jié)合了不同層級(jí)和其他DHTML開(kāi)發(fā),JavaScript也使得RIA的開(kāi)發(fā)成為可能。Ajax是這種技術(shù)結(jié)合的一個(gè)新的形勢(shì),被最廣泛的運(yùn)用于Google的各個(gè)項(xiàng)目中,如Gmail和Google Maps。但是,靠這樣的框架建立大型程序相當(dāng)困難,因?yàn)樾枰褂枚囗?xiàng)技術(shù)相互交流,且瀏覽器需要支持每一種技術(shù)的運(yùn)行。為了解決這些問(wèn)題,眾多的開(kāi)源或商用開(kāi)發(fā)都已投入實(shí)踐測(cè)試中。Microsoft ActiveX在HTML中嵌入ActiveX控件后,便具有了相當(dāng)強(qiáng)大的開(kāi)發(fā)RIA功能。但是ActiveX只能運(yùn)行于Internet Explorer中,不具備跨瀏覽器的特性。且由于ActiveX不在沙盒中運(yùn)行,極為容易受到病毒和惡意軟件的侵襲?,F(xiàn)今的Adobe Flash Player都是作為Internet Explorer的ActiveX控件安裝于Windows環(huán)境中,而在跨平臺(tái)的Netscape瀏覽器中則作為插件使用。在Internet Explorer與其他瀏覽器達(dá)成標(biāo)準(zhǔn)之后,ActiveX技術(shù)可能成為建立RIA最優(yōu)先的選擇。Microsoft SilverlightMicrosoft Silverlight,也是Windows Presentation Foundation(WPF)的一個(gè)功能子集,是Microsoft公司發(fā)布的專門用來(lái)開(kāi)發(fā)RIA的工具。這里是本文最終選擇用于開(kāi)發(fā)實(shí)驗(yàn)用例的技術(shù)。與WPF相同,Silverlight使用XAML來(lái)開(kāi)發(fā)界面,因此有.NET或XAML開(kāi)發(fā)經(jīng)驗(yàn)的開(kāi)發(fā)者都會(huì)發(fā)現(xiàn)Silverlight開(kāi)發(fā)過(guò)程的熟悉性,也因此可以吸引當(dāng)前大部分.NET開(kāi)發(fā)者。為了運(yùn)行Silverlight程序,客戶端必須安裝一個(gè)Silverlight運(yùn)行時(shí)插件,而這個(gè)插件的大小約為2MB左右,十分便捷。至今為止,Silverlight的插件可以運(yùn)行于Windows和Mac OS X系統(tǒng)瀏覽器之上,實(shí)現(xiàn)了部分的跨瀏覽器,跨平臺(tái)性。而一個(gè)第三方開(kāi)源插件,稱為moonlight,則可以實(shí)現(xiàn)在Linux上運(yùn)行Silverlight創(chuàng)建的RIA。且Microsoft公司也承諾將會(huì)拓寬所支持的客戶端范圍。在今年Las Vegas的MIX08會(huì)議上,Microsoft發(fā)布了Silverlight 2.0的測(cè)試版本,運(yùn)行在Nokia S60平臺(tái)上,同時(shí)發(fā)布的也包括Microsoft Windows Mobile 6。Silverlight 2.0 Beta也是本次系統(tǒng)所使用的版本,而正式版將于2008年8月推出。Mozilla PrismMozilla Prism用于集成Web程序和桌面應(yīng)用程序,允許通過(guò)桌面應(yīng)用程序制定特定瀏覽器來(lái)運(yùn)行Web程序。OpenLaszloOpenLaszlo是由Laszlo System公司開(kāi)發(fā)的一款開(kāi)源RIA框架。OpenLaszlo的服務(wù)器將由LZX語(yǔ)言(一款結(jié)合XML和JavaScript的語(yǔ)言)編寫(xiě)的程序編譯為DHTML(現(xiàn)稱為Ajax)或Adobe Flash位代碼,同時(shí)也支持Flash7和Flash8。該服務(wù)器技術(shù)曾屬于專利項(xiàng)目,在2004年8月是通過(guò)Common Public License被開(kāi)源。OpenLazlo是唯一一款能夠?qū)⑼淮a編譯成為兩種運(yùn)行語(yǔ)言的RIA工具。REBOL 2.6和Smalltalk的Seaside與Java開(kāi)發(fā)的RIA可媲美的技術(shù)還包括REBOL和Smalltalk編程語(yǔ)言。REBOL不需要瀏覽器,而Smalltalk的Seaside更為豐富的網(wǎng)絡(luò)體驗(yàn)。兩種技術(shù)與Java和JVM相比,發(fā)展程度都還不夠。2.6 本章小結(jié)RIA是為了解決Web Application各種局限而誕生的,它結(jié)合了Client/Server結(jié)構(gòu)的許多優(yōu)點(diǎn),也是軟件產(chǎn)業(yè)追求更高效,更加推崇用于交互體驗(yàn)的一種象征。盡管RIA的發(fā)展還不完善,需要我輩不懈的努力使之發(fā)展壯大,但相信RIA在各大軟件龍頭企業(yè)的帶動(dòng)下,一定會(huì)有更為廣闊的開(kāi)發(fā)前景。在下面的章節(jié)中,我們將選取Microsoft Silverlight作為重點(diǎn),闡述其發(fā)展歷史,優(yōu)缺點(diǎn)并使用該技術(shù)開(kāi)發(fā)了一個(gè)名為Pancake English的英語(yǔ)學(xué)習(xí)網(wǎng)站作為實(shí)例,來(lái)探討該技術(shù)的開(kāi)發(fā)過(guò)程以及發(fā)展空間。第三章 Microsoft Silverlight表1 Silverlight發(fā)布信息Microsoft Silverlight開(kāi)發(fā)商:Microsoft下一版本預(yù)計(jì)發(fā)布時(shí)間:2008年8月上一版本發(fā)布時(shí)間:2008年3月5日 2.0測(cè)試版開(kāi)發(fā)語(yǔ)言:C+與C#混合開(kāi)發(fā)運(yùn)行系統(tǒng):Windows,MacMicrosoft Silverlight是一種網(wǎng)絡(luò)瀏覽器插件,它為RIA提供了諸如動(dòng)畫(huà),矢量圖型和音頻視頻播放的支持。作為Microsoft公司搶占RIA市場(chǎng)重拳出擊的項(xiàng)目,Silverlight需要與Adobe Flash,Adobe Flex,Adobe Shockwave,JavaFX和Apple Quick Time競(jìng)爭(zhēng)。其2.0版本更是引進(jìn)了更加強(qiáng)大的交互性,并提供了對(duì)于.NET語(yǔ)言和開(kāi)發(fā)工具的支持。最初的Silverlight被稱為Windows Presentation Foundation/Everywhere(WPF/E),可以運(yùn)行于Windows系統(tǒng)和Mac OS X操作系統(tǒng)上。對(duì)于移動(dòng)設(shè)備,從Windows Mobile 6或Symbian(60系列)之后的手機(jī),都將會(huì)支持Silverlight。一個(gè)名為Moonlight的第三方軟件如今也正在開(kāi)發(fā)中,將會(huì)實(shí)現(xiàn)Silverlight在GNU/Linux上的支持。3.1 Silverlight概述與WPF相似,Silverlight提供了圖像系統(tǒng)的保留模型,可以集成多媒體,圖像,動(dòng)畫(huà)和各個(gè)運(yùn)行之間的交互。Silverlight使用XAML語(yǔ)言,同時(shí)可以使用JavaScript進(jìn)行腳本編程,其中XAML語(yǔ)言提供了矢量圖型和動(dòng)畫(huà)的各種數(shù)據(jù)。相比于Flash無(wú)法編譯的文檔,Silverlight的文字內(nèi)容更容易被搜索和定位,但必須在XAML文檔中定義。(若是動(dòng)態(tài)生成的控件中的文字,則無(wú)法被搜索引擎識(shí)別)。Silverlight也可以用于開(kāi)發(fā)Windows Vista系統(tǒng)中的邊欄功能。以下是一段XAML文檔的內(nèi)容:代碼段1 XAML范例該段代碼在一個(gè)Canvas對(duì)象上設(shè)置了一個(gè)文本框,這里Canvas等同于一塊畫(huà)布,開(kāi)發(fā)者可以通過(guò)在其上添加各類控件來(lái)開(kāi)發(fā)用戶界面。而在文本框TextBox中,有一個(gè)TextChanged的對(duì)象,指向一個(gè)后臺(tái)代碼的函數(shù),用于處理各種動(dòng)態(tài)事件。XAML界面與后臺(tái)代碼的關(guān)聯(lián)也就表現(xiàn)在這里。Silverlight提供了對(duì)于所有瀏覽器上WMV,WMA和MP3文件格式的播放功能,且不需要Windows Media Player或是Windows Media Player ActiveX的支持。因?yàn)閃indows Media Video 9屬于SMPTE VC-1的實(shí)現(xiàn),所以Silverlight也提供了對(duì)于VC-1的是的支持,但必須使用ASF格式的文件。而H.264格式的視頻是不為Silverlight所支持的。Silverlight可以使用DOM接口動(dòng)態(tài)的加載XML內(nèi)容,并支持與Ajax技術(shù)交互。Silverlight提供了一個(gè)名為Downloader的對(duì)象,專門用于下載腳本,媒體內(nèi)容或其他程序所需要的數(shù)據(jù)。在2.0版本中,程序邏輯可以由任意.NET語(yǔ)言編寫(xiě),如VB和C#,而Ruby和Python等動(dòng)態(tài)編程語(yǔ)言也可使用。3.2 Silverlight的兼容性表2 Silverlight的兼容性操作系統(tǒng):Windows Vista/2008IE 6 SP1不可用IE 6 SV1不可用IE71.0和2.0IE82.0Firefox/SeaMonkey/Mozilla1.0和2.0Safari通過(guò)NPAPI支持1.0和2.0Konqueror不可用Opera非官方操作系統(tǒng):Windows XP/2003/Home ServerIE 6 SP1不可用IE 6 SV11.0和2.0IE71.0和2.0IE82.0Firefox/SeaMonkey/Mozilla1.0和2.0Safari通過(guò)NPAPI支持1.0和2.0Konqueror不可用Opera非官方操作系統(tǒng):Windows 2000IE 6 SP12.0IE 6 SV1不可用IE7不可用IE8不可用Firefox/SeaMonkey/Mozilla不可用Safari通過(guò)NPAPI支持2.0Konqueror不可用Opera計(jì)劃操作系統(tǒng):Windows Mobile 6IE 6 SP11.0IE 6 SV1不可用IE7不可用IE8不可用Firefox/SeaMonkey/Mozilla不可用Safari不可用Konqueror不可用Opera不可用操作系統(tǒng):Mac OS 10.4/10.5 PowerPCIE 6 SP1不可用IE 6 SV1不可用IE7不可用IE8不可用Firefox/SeaMonkey/Mozilla1.0Safari1.0Konqueror不可用Opera計(jì)劃操作系統(tǒng):Mac OS 10.4/10.5 IntelIE 6 SP1不可用IE 6 SV1不可用IE7不可用IE8不可用Firefox/SeaMonkey/Mozilla1.0和2.0Safari1.0和2.0Konqueror不可用Opera計(jì)劃操作系統(tǒng):Linux x86-64(moonlight)IE 6 SP1不可用IE 6 SV1不可用IE7不可用IE8不可用Firefox/SeaMonkey/Mozilla計(jì)劃Safari不可用Konqueror計(jì)劃Opera計(jì)劃操作系統(tǒng):Linux x86(moonlight)IE 6 SP1不可用IE 6 SV1不可用IE7不可用IE8不可用Firefox/SeaMonkey/Mozilla計(jì)劃Safari不可用Konqueror計(jì)劃Opera計(jì)劃注釋:l Opera對(duì)于Silverlight的官方支持將正在建設(shè)中。非官方的支持現(xiàn)都采用黑客方法。l 在Linux系統(tǒng)中,程序功能由第三方軟件moonlight來(lái)實(shí)現(xiàn)。Moonlight將會(huì)為L(zhǎng)inux的各種分布提供支持,對(duì)于Firefox,Konqueror和Opera的支持正在研發(fā)中l(wèi) Silverlight移動(dòng)終端版本也將會(huì)發(fā)布

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論