Silverlight 3提升4成瀏覽效能


微軟的RIA網頁互動技術Silverlight 3,改用二進位方式編譯XAML程式碼,來提高使用者瀏覽網頁的速度,而且透過設定就可以讓Silverlight程式離線執行了。

微軟在MIX09會議發表新版Silverlight 3的測試版,新增了多項控制元件和影音繪圖功能。此外,微軟也改變Silverlight 3的XAML程式碼的儲存方式,改用類似Flash的方法,以二進位編碼檔來提高執行速度。

為了讓.NET開發者更容易開發出網路RIA應用,微軟在2年前發表了Silverlight技術來和Adobe的Flash技術對抗,臺灣已有企業,如中華航空、寶來證券、新光證券等也開始採用Silverlight來打造客戶服務。甚至新光證券有高達5成的客戶,改用Silverlight打造的電子下單平臺來進行交易。

為了滿足RIA企業應用需要的執行效能,微軟在上周釋出的新版中,改變了Silverlight XAML程式碼的檔案編碼方式,不再使用文字格式,而是將XAML編譯成二進位檔。臺灣微軟開發工具暨平臺推廣處資深應用架構技術經理李匡正說:「新版做了很多效能優化,像程式碼編譯後就可以提高速度。」

新光證券已開始在內部測試環境中,改用Silverlight 3來執行電子下單系統,新光證券技術總監吳志宏表示:「用追蹤50檔股票的成交價監控網頁為例,當使用者端進行瀏覽、換頁等動作時,新版大概比2.0版快了40%。」

從開發角度來看,吳志宏表示,只需要對原來用2.0版開發的程式作一些修改,升級新版後,使用者端的瀏覽速度就可以提升,他認為:「值得進行升級。」不過,目前他擔心最終正式版的功能還會改變,所以,新光證券只進行內部測試,不會全面升級。微軟表示,今年內會推出正式版。

除了改善瀏覽速度外,微軟在Silverlight 3.0測試版中,增加了十幾項控制元件。

例如資料表DataGrid元件、樹狀檢視用的TreeView元件、輸入自動完成的元件、處理資料呈現的DataForm元件和換頁控制用的DataPager元件等。 新版也終於內建了開發者常用的資料繫結(Data Binding)功能,新增的元件繫結(Element-to-Element Binding)機制,可以讓兩個互動元件的特定屬性建立連結,其中一個元件的屬性改變,也會連帶變更對應屬性的數值,例如滑鼠拖曳價格區間的滑桿(Slide)按鈕時,物品清單上的數量會自動依據滑桿顯示的數值,自動過濾掉不符條件的項目。

開發者可以專注在元件之間的程式邏輯,透過繫結機制進行設定,就可以讓元件之間的屬性資訊自動同步,不需要像過去那樣,得自行撰寫同步的程式碼。

新版也將RIA應用延伸到桌面系統中,微軟MVP呂高旭表示:「寫好的Silverlight程式經過一些設定,就可以直接執行,不需要瀏覽器。」此外,呂高旭補充,Silvelright 3還會在本地端檔案系統中隔離出一塊空間,讓離線執行的Silverlight程式保存資料。

整體而言,Silverlight 3除了強化影音效果外,也增加了更多企業應用需要的前端互動元件,離線技術也能解決RIA暫時無法連線的困擾。精誠資訊多媒體產品處知識產品事業部產品經理宋志峰認為:「Silverlight的功能逐漸追上Adobe的Flash/Flex/AIR技術。」

不過,宋志峰認為目前的競爭不一定是好事,「雙方不斷推出新功能,有時甚至拿出工程等級的API, 但是沒有包裝成友善好用的介面,使用者不見得受益。」

新光證券技術總監吳志宏表示,Silverlight新版讓下單網站的瀏覽速度提高了約4成,可以提供更多即時資訊。不過,他擔心功能改變產生相容問題,新光證券還是要等到正式版發表後才會採用。