于茜 張媛媛 韓秉旭 潘媛
摘要:Silverlight是微軟公司推出的一款具有自己獨特的體系架構(gòu)的插件技術(shù)。該文闡述了什么是Silverlight以及Silverlight的體系架構(gòu)、發(fā)展前景,并通過Silverlight在Web、AJAX等技術(shù)中的實用性進(jìn)行了研究與探討,研究它具有良好的現(xiàn)實意義。
關(guān)鍵詞:Silverlight;插件技術(shù);AJAX
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2014)35-8582-02
Silverlight Technology Research
YU Xi1, ZHANG Yuan-yuan1,HAN Bing-xu2, PAN Yuan2
(1. Software School, University of Science and Technology Liaoning , Anshan 114001, China; 2.State Grid Anshan Electric Power Company, Anshan 114001, China)
Abstract: Silverlight is Microsoft's launch of a unique architecture with its own plug technology. It 's very practical, and the modern Internet can be a lot of the core technology perfect fusion. From the Silverlight architecture and its development prospects and other aspects of research and discussion, study it has good practical significance.
Key words: Silverlight concept analysis ; Silverlight architecture ; Silverlight practical ; Silverlight development prospects
隨著網(wǎng)民的數(shù)量逐步增長,人們對互聯(lián)網(wǎng)服務(wù)的需求越來越大,互聯(lián)網(wǎng)技術(shù)也在不斷的推陳出新,從而更好的滿足人們的需求。微軟的Silverlight技術(shù)自發(fā)布以來,受到了來自業(yè)內(nèi)的廣泛關(guān)注,Silverlight技術(shù)作為一種跨平臺、跨瀏覽器的技術(shù)在豐富的媒體經(jīng)驗及豐富的交互式應(yīng)用領(lǐng)域奉獻(xiàn)給大家一個值得信賴的平臺。
1 多視角剖析Silverlight
什么是Silverlight技術(shù),從不同的角度分析會有不同的答案。
1.1用戶角度
對于每一個互聯(lián)網(wǎng)的用戶來說,Silverlight相當(dāng)于一個簡單的應(yīng)用程序,用戶只需要下載安裝這個插件程序,就可以在windows等多種瀏覽器上運行相應(yīng)的Silverlight插件程序,與此同時,我們可以通過Silverlight極其優(yōu)越的矢量圖形、動畫和多媒體支持功能享受豐富的互聯(lián)網(wǎng)服務(wù)。
1.2開發(fā)者角度
對于程序的開發(fā)者而言,Silverlight插件技術(shù)是一種基于WPF/E的、融合了多種Web技術(shù)集合的呈現(xiàn)。程序開發(fā)人員通過Silverlight體系架構(gòu),以及XAML來創(chuàng)建用戶界面元素,比如圖形、漸變、動畫等支持了任何尺寸圖像的無縫整合。對基于ASP.NET、AJAX等Web開發(fā)環(huán)境以及JavaScript代碼更是實現(xiàn)了無縫集成,增強已有功能。Silverlight程序開發(fā)人員通過其強大的跨瀏覽器、跨平臺能力運行界面絢麗上網(wǎng)Web應(yīng)用程序——Silverlight應(yīng)用程序,實現(xiàn)了更流暢、更方便的交互方式、提供給用戶更多的極致體驗。
簡而言之,Silverlight是一種跨瀏覽器、跨平臺的應(yīng)用插件,內(nèi)置支持豐富的網(wǎng)絡(luò)通信功能以及豐富的交互式的應(yīng)用程序。
2 Silverlight功能特色
Silverlight可以創(chuàng)建一種具有很高藝術(shù)性的應(yīng)用程序,并具有以下的特點:
1) 跨瀏覽器、跨平臺支持:Silverlight應(yīng)用插件可以在任意平臺上的瀏覽器上運行自如,作為開發(fā)人員完全不需要用戶所需的瀏覽器類型及操作平臺。
2) 與現(xiàn)有的應(yīng)用程序集成:Silverlight應(yīng)用程序可以與現(xiàn)有的ASP.NET、AJAX以及Javascript代碼無縫隙結(jié)合,增強了自身的功能。
3) 豐富的網(wǎng)絡(luò)支持:Silverlight包括對TCP上的HTTP支持,可以調(diào)用WFC或任何基于SOAP的服務(wù)并接收XML、JSON或RSS等數(shù)據(jù),并且支持Socket通信。
4) LINQ支持:Silverlight包括語言結(jié)成查詢(LINQ)
5) Silverlight 具有多種開發(fā)工具:開發(fā)人員可以通過自己熟識的開發(fā)工具如:Visual Studio 、C# 編程語言來創(chuàng)建基于Silverlight的應(yīng)用插件,在Web頁面中,既可以使用HTML,也可以使用Silverlight的WPF元素設(shè)計。
6) 對視頻媒體的支持:Silverlight優(yōu)秀的視頻和音頻流化技術(shù),使視頻模式能夠高達(dá)720p HDTV。不僅如此,Silverlight更是采用了榮獲Emmy獎的Windows Media技術(shù),使同等質(zhì)量的視頻傳輸流量下降了約46%,并與現(xiàn)有的Windows Media流量配置方案兼容。
7) 豐富的交互式能力:現(xiàn)在,越來越多的互聯(lián)網(wǎng)供應(yīng)商開始搭建自己的在線網(wǎng)絡(luò)平臺,但是由于網(wǎng)上存在的病毒軟件大量泛濫導(dǎo)致許多用戶不敢下載ActiveX 控件使用。然而,Silverlight插件技術(shù)在設(shè)計的過程中就避免了使用ActiveX 控件,從而增強了安全性。
3 Silverlight體系架構(gòu)
Silverlight平臺作為一個整體,從Silverlight2.0角度看,主要可以由兩部分構(gòu)成:核心表示層框架和Silverlight中的.NET Framework,前者提供了面向UI和用戶交互式的組件及服務(wù)(其中包括用戶輸入、用于Web應(yīng)用程序的清量型UI控件、數(shù)字版權(quán)管理、數(shù)據(jù)綁定以及媒體播放),表示層功能(包括了矢量圖形、文本、動畫和圖像),此外還包括用于指定布局的可擴(kuò)展應(yīng)用程序的標(biāo)記語言;Silverlight中包含一個.NET Framework的子集,其中包括數(shù)據(jù)的集成、可擴(kuò)展windows控件、網(wǎng)絡(luò)、基類庫、垃圾回收站和公共語言運行時。這兩部分的關(guān)系可用圖1表示。
4 Silverlight的實用說明
4.1 Silverlight與Web的完美融合
4.1.1 Silverlight技術(shù)與其他Web技術(shù)的比較
目前,Adobe Flash和Java Applet在Web中應(yīng)用很廣泛,但同時也存在許多的局限性。例如:Adobe Flash的發(fā)行難度和維護(hù)的成本是極高的,一個網(wǎng)游如果使用PHP制作可能在線人數(shù)達(dá)到1000人玩家會覺得卡,而Flash則達(dá)到500人時,玩家就已經(jīng)覺得比較卡了。此外,另一種Web技術(shù)Java Applet由于其沒有將界面設(shè)計與是實現(xiàn)代碼完全分離開,導(dǎo)致后期的美工人員對網(wǎng)頁界面的維護(hù)造成了很大的困難。
Silverlight技術(shù)在Web應(yīng)用方面可以達(dá)到與Adobe Flash以及Java Applet同樣的效果。
Silverlight是由XMLA語言來編寫的,采用這種語言有利于將SEO與搜索引擎的網(wǎng)站進(jìn)行優(yōu)化,同時,用XMLA語言編寫代碼,可將界面設(shè)計與邏輯代碼分離開,這樣就避免了使用Java Applet開發(fā)網(wǎng)站時后期網(wǎng)站維護(hù)人員的不便。
4.1.2 Silverlight技術(shù)在Web中的應(yīng)用
Silverlight的矢量及優(yōu)秀的制圖媒體播放的能力,使得Silverlight可以應(yīng)用在以下領(lǐng)域:
1) 各種網(wǎng)頁的視頻媒體播放、廣告、動漫等產(chǎn)業(yè)均可用到它。
2) 在網(wǎng)頁中添加組件,如:小游戲、小功能箱等使網(wǎng)頁內(nèi)容更加豐富。
3) 分析網(wǎng)絡(luò)中的矢量圖形,如:財務(wù)報表、信息統(tǒng)計等。
在我國2008年奧運會現(xiàn)場直播的過程中,許多網(wǎng)絡(luò)播放的供應(yīng)商都采用了Silverlight技術(shù),及時的為大家呈現(xiàn)了高清順暢的現(xiàn)場直播畫面;美國最大的棒球聯(lián)盟MLB也曾使用Silverlight播放其網(wǎng)站上的部分視頻。
4.2 Silverlight與AJAX技術(shù)
Silverlight技術(shù)是一種建立在AJAX基礎(chǔ)之上的插件技術(shù),它與AJAX之間是互補的關(guān)系。我們可以簡單地認(rèn)為我們現(xiàn)有的AJAX應(yīng)用程序建立了一個Silverlight交互層,因此,程序的開發(fā)人員可以繼續(xù)使用現(xiàn)在的代碼庫,而不是重頭編寫一個程序代碼。當(dāng)你希望更改自己應(yīng)用程序的外觀時,只需通過Silverlight的背景層加載在你現(xiàn)有元素上,從而避免了大規(guī)模修改代碼。
4.3 Silverlight與WPF技術(shù)
WPF可以說是在.NET 3.0到Windows窗體間的繼承者。WPF是引人注目的,它不僅簡化了一個高層次的強大的功能集的發(fā)展,同時也增加了通過的DirectX渲染管線的一切表現(xiàn)。Silverlight最初被稱為WPF/E,它是一種面向瀏覽器的Web應(yīng)用程序的一個WPF的子集。Silverlight在許多方面借鑒了WPF的相應(yīng)的技術(shù),并且具有相同的規(guī)范格式。在Silverlight繪圖時所使用的形狀、路徑以及變換,所有這些都與WPF有緊密的聯(lián)系。 此外,Silverlight在為一個動畫聲明模型時,作為WPF的動畫系統(tǒng)有相同的工作方式。如今,Silverlight以其快速的開發(fā)周期廣為所知,且持續(xù)得到眾人的關(guān)注,很多人認(rèn)為它會成為微軟未來的重要開發(fā)平臺。
5 Silverlight的發(fā)展前景
隨著Silverlight技術(shù)的不斷改進(jìn),直到現(xiàn)階段的Silverlight 5.1為止,Silverlight技術(shù)已經(jīng)達(dá)到了非常完美的境界,使用它的網(wǎng)絡(luò)供應(yīng)商也越來越多。同時,未來的網(wǎng)絡(luò)的交互性與豐富性也會有極大的改變,用戶對Web的應(yīng)用品質(zhì)也有了越來越高的追求,這就要求Web的應(yīng)用插件具有強大的交互及數(shù)據(jù)處理、媒體管理的能力,而這些都是現(xiàn)階段Silverlight所具備的。綜合分析來看,Silverlight作為一種跨瀏覽器、跨平臺的插件技術(shù),將會越來越活躍在人們的“交互”過程中。
6 結(jié)束語
Silverlight是一種活躍于人們?nèi)粘I钪械闹匾寮夹g(shù),并具有跨瀏覽器、跨平臺的富互聯(lián)網(wǎng)應(yīng)用程序開發(fā)技術(shù),并通過極其優(yōu)越的矢量圖形、動畫和多媒體支持negligence,內(nèi)置支持豐富的網(wǎng)絡(luò)通信功能,為廣大用戶帶來極致體驗。當(dāng)然,隨著技術(shù)和設(shè)計理念的不斷進(jìn)步,這種結(jié)構(gòu)模型與體系架構(gòu)應(yīng)該得到不斷的完善與發(fā)展。
參考文獻(xiàn):
[1] 李會軍.Silverlight2 完美征程[M].北京:電子工業(yè)出版社,2009.
[2] 耿飆.基于XML電子病歷文檔多重簽名的應(yīng)用研究[J].計算機與現(xiàn)代化,2012(12).
[3] 閆冰.基于WCF的分布式應(yīng)用開發(fā)[J].電腦知識與技術(shù),2008(3).
[4] Nathan A.WPF揭秘[M].瞿杰,單佐一,夏寒,譯.北京:人民郵電出版社,2008.
[5] 摩諾尼.Microsoft Silverlight2 導(dǎo)學(xué)[M].黃繼佳,李曉東,唐海洋,譯.北京:機械工業(yè)出版社,2009.
[6] 章立民研究室.Silverlight 范例導(dǎo)學(xué)[M].北京:機械工業(yè)出版社華章公司,2008.