本文譯自2010年9月1日 http://team.silverlight.net/announcement/the-future-of-silverlight/ Silverlight Team blog 公開內容,有助於開發人員了解 Microsoft Silverlight 未來技術演進,這也是目前微軟公司對外正式的回覆。
近來許多討論一直圍繞 Web 與 HTML 5 標準,尤其是 HTML 5。人們一直在問微軟 Silverlight 研發團隊一個問題;當開發人員面對瀏覽器已經內建了 HTML 5 <video> 標籤的未來世界裡,Silverlight 該扮演何種角色融入這樣的環境。
這是一個很直接的問題,我會提供一個很完整的答覆,但我認為對於在 “標準” 下 Silverlight 的角色問題,這是一個過於簡化的提問,為了釐清問題我希望先描述,為什麼 Silverlight 在進階媒體使用經驗和應用程式的情境下,是較佳的跨越瀏覽器,桌面環境和多種設備的技術。
許多朋友或許不知道,微軟公司接觸超過 150 個國際標準制定組織,並參與 400 餘項標準制定的工作,其中一項微軟公司參與多年的標準就是 HTML,我們承諾持續支援此一 Web 標準。這不僅只是空談,微軟公司現有許多技術投資是建立在 HTML 相關技術的基礎上, 例如SharePoint,Ineternet Explorer 瀏覽器 與 ASP.NET。我們相信,未來 HTML 5 將成為無所不在的標準,就如同今日的 HTML 4.01。
但是就整個產業的進步而言,標準只是整個故事的一部分。各家廠商與組織可以廣泛地依照標準實作出技術,像是鋪設好的道路一般,引導整個業界往共同的方向邁進。但在康莊大道出現之前,必須有人先嘗試走出一條小徑,這就是創新。創新和標準往往是共生的,創新走在其他標準之前,使得日後建立標準時無須針對每個遇到的問題去 “重新發明輪子”,尋求解決的方法。創新能夠專注處理特定待解決的問題,創新也可補足或擴展現有的標準,最終成為被廣泛接受的標準,羊腸小徑擴展為康莊大道。
在過去已經發生好幾次,瀏覽器中某些創新的功能,日後成為業界標準。目前 HTML 最新標準中許多的創新是來自於瀏覽器 Plug-in 技術,例如 Flash 與 Silverlight。這是必要的,因為其中某些功能目前已如此的普及,早已被網路用戶視為是必須有的基本功能。所以用戶對於 Web 標準需求的基準線,往往比過去的標準來的高,而用戶的新需求往往出現得更快,未來仍有更多新的需求必須透過創新來加以解決。
這就是未來 Silverlight 可發揮之處,在 Web 應用中微軟從未嘗試以 Silverlight 取代 HTML,Silverlight 是協助開發人員更簡易地處理 HTML(和其他技術)所不容易解決的問題。微軟仍然承諾利用 Silverlight 來擴展 HTML 所無法涵蓋之 Web 應用情境。從簡純的讓 HTML 網頁內容更豐富 ( “islands of richness” ),到全功能與視窗桌面程式相似之應用,Silverlight 提供各種用戶想要的豐富使用經驗,我們歸類為三大類:進階媒體使用經驗,消費性應用程式與遊戲,以及商業 /企業應用程式。
應用情境包含:
儘管這些使用經驗都集中在媒體播放,實際上這些是融合多種頻道媒體,並為用戶提供全面掌控權的全方位應用,用戶可以自由決定何時何地以自己想要的形式來欣賞媒體內容。Silverlight 媒體功能的遠超出了 HTML 5 所能提供的功能,使得用戶在目前的瀏覽器與未來的瀏覽器中都能享有一致的功能,與 HTML 5 主要差別之應用情境如下:
消費者對於應用程式與設備之使用經驗的要求不斷提升,無論生產力應用程式或遊戲都希望看起來,用起來與感受上都要達到一定之水準, 透過美術設計師和軟體開發人員 Silverlight 實現人們想要擁有的這些功能:
當用戶在消費性市場中習慣了更豐富,更好的使用者經驗之後,他們將會把對於應用軟體與設備的高標準期望值帶到了工作環境,今日的商業應用亦需要一個平台,能夠滿足並超越這些期望。但是傳統的商業應用程式是針對內部員工所開發的,目的在於快速開發而缺乏專業美術設計師。為達到此一目的,Silverlight 提供以下豐富功能:
對於一般性的簡單應用,我們或許不需要使用到上面提到的進階功能,此時 Silverlight 和未來的 HTML 標準都能符合需求。然而,當您考量到兼顧現狀與未來的平台技術,仍有一些其它的技術考量因素,例如執行效能,呈現一致性與時效。
應用程式的反應速度,是否有能力處理現代應用程式所需之複雜運算,往往是關係用戶使用者經驗好壞的主要因素。 Silverlight 運用 CLR (Common Language Runtime) 與硬體加速提升視訊播放能力,此外,並可運用 .NET 與多執行緒 (multithreading) 呈現出反應快速之使用者介面。今日在許多情況之下,Silverlight 是 Web 上速度最快的執行環境。
針對不同品牌瀏覽器之 HTML 5 與 CSS3 呈現一致性問題,微軟正在提供呈現一致性之測試套件,以協助改善 HTML 5 與 CSS3 在不同品牌瀏覽器間顯示差異的問題。 HTML 與 CSS 在不同瀏覽器間呈現差異性問題過去即存在,HTML 5 與CSS 3 的推出,將會這項問題繼續存在一陣子,畢竟新規格擴展了新的應用領域,所有廠商的瀏覽器實作也都是新加入的。反之,以 Silverlight 開發之應用程式,我們可以確保它在各種不同的環境呈現效果是一致的。
在 HTML 5 規格制定過程的一半時間之中,微軟公司已經釋出了四個主要的 Silverlight 版本。目前還不清楚何時 HTML 5 規格與相關測試套件會完成。對於 HTML 5 中的各項新功能,目前應該關注的,是已經穩定下來所有的瀏覽器都支援的規格。支援 HTML 5 瀏覽器若要達到高普及率,需要超過十億用戶安裝最新版本瀏覽器,或是購買新設備與新機器,這將需要一段時間方能普及。當 HTML 5 到達能被廣為接受的時間點時,同時 Silverlight 已經演進出新的重要功能。Silverlight 現在就可以應用於所有流行的瀏覽器與作業系統。
這次討論 Silverlight 的未來中,有一個關鍵點,Silverlight 經常被提到僅是個瀏覽器的 plug-in,甚至過去微軟也曾這樣定位Silverlight。現今 Web 不斷演進,同樣的 Silverlight 也不斷地在演變發展,雖然應用程式執行於瀏覽器仍是我們的研發焦點,但兩年之前,我們便開始展示 Silverlight 遠超過僅是個單純的瀏覽器技術。
Silverlight 投資在三個瀏覽器以外的領域,視窗桌面,行動設備與客廳。今日 Silverlight 即可開發功能強大之桌面應用程式,這些桌面應用程式並不需要額外的下載,當用戶安裝 Silverlight,這類桌面程式即可透過瀏覽器尋得與下載,並且每個獨立的桌面應用程式都可無痛的安裝或刪除。 Silverlight 現在還可執行於行動設備,並且是 Windows Phone 7 的主要開發平台。學習 Silverlight 的開發人員,能夠迅速轉變成為一個能夠開發手機應用的開發人員。最後,今年推出的 Silverlight 4 與在美國國家廣播工作者協會 (NAB,National Association of Broadcasters) 2010 年年會中的展示,展示了如何使用Silverlight 可以作為一個強大的,功能豐富的客廳設備平台。
我們期望看到 Silverlight 有更多的應用在這些領域,特別是高畫質的影音媒體經驗,消費性應用程式與遊戲,以及企業應用。當你投資時間學習 Silverlight,你將有能力開發各種類型的應用程式,從商業應用到娛樂應用,從瀏覽器到行動設備與家庭客廳,兼顧了有趣與獲利。而最好的地方是 - 你可以從現在就開始開發 Silverlight,並執行於 600,000,000 台已經安裝 Silverlight 的桌上型電腦與設備。
Brad Becker,Director of Product Management,Developer Platforms