微軟為什麼用 Silverlight 作為 WP7 和 Xbox 的主流開發技術?


微軟當年的原意完全是處於和Flash競爭,所以Silverlight在媒體方面一直有比較不錯的表現。具體例子可以看http://cool.pptv.com。

不十分能贊同洪超前輩關於Silverlight取得階段性勝利的看法。其實在微軟內部有關Silverlight何去何從一直爭論不短。從前段事件Server Tool Business的總裁Bob Muglia因在公開場合"不小心"說了看空Silverlight的言論後這個爭論就更加的激烈了。

事實其實大家也慢慢看到,微軟會從Windows 8開始將前所未有的資源投入到HTML5作為標準程序開發框架的事情中來。所以可以想像這一趨勢勢必會影響到Windows Phone尤其是WP8中。


首先就我所知,Silverlight並沒有用在XBox上用作遊戲開發。它的目的是加強XBOX訪問web內容的平台。

至於手機開發,我倒是認為Silverlight是目前微軟唯一的選擇。如今的手機開發和桌面程序開發相當不同。手機要求圖形界面界面簡潔明了,而且風格統一。除了遊戲和一部分強調生活休閑的軟體之外,一般沒必要引入太多的自繪控制項。這個時候開發效率的要求是首位的。相比之下,微軟的非託管代碼普遍存在抽象程度太低的問題,包括MFC甚至WTL,而且默認的控制項數目太少,開發桌面也許沒問題,但難以滿足手機程序的開發效率要求。

Windows Forms?WPF還在襁褓中時,微軟早就迫不及待地宣布放棄它了。老實說,我一直都挺喜歡這個桌面框架,但不知道為什麼,這孩子就是得不到自家爹娘的歡心。至於WPF——別開玩笑了,這玩藝執行效率低下,而且默認的主題也難看(控制項間距過寬嚴重浪費屏幕空間,讓人想起早期的Gnome默認主題)。在我看來,它只是一個設計者用來炫耀自己有多熱愛XML的玩具,根本不算產品。(WPF粉絲請見諒)

那麼HTML5?IE9的HTML 5支持還不完整,而且說白了,微軟這麼多年基本上也沒有真的在HTML 5這邊投過多少精力。如今IE的HTML5引擎在手機上的執行效率如何,現在無人知曉。

與其把寶押在這麼多無法預知的東西上,倒不如讓一個自家孩子煥發第二春——別狡辯,在web富媒體領域Silverlight這麼多年基本上沒有拿下過一塊市場,完全敗給了flash。無論是HTML 5還是Flash,都沒有把它放在眼裡。

至於什麼依託,什麼雲計算。算了吧,雲計算的根基是REST,是HTTP,跟Silverlight有什麼關係?


業界趨勢已經開始逐漸向「雲計算」轉移,大量應用由原有的Software逐步轉化為Service存在。在未來,操作系統以及客戶端軟體將逐步變得不重要,但這個時期會比我們想像的長,所以微軟針對「雲計算」提出了一個自己的策略,即「雲加端(Cloud+Client)」。既不放棄對端的繼續投入,也要抓住雲的發展趨勢。

在這個發展過程當中,會有越來越多的軟體由原有的客戶端Native形式,轉化為瀏覽器存在。現有的瀏覽器技術,除了IE本身是由微軟本身掌握之外,像HTML、Flash均不屬於微軟生態圈範疇的。所以,微軟會發現自己一下子由平台提供商轉變為了純應用提供商,對於其長遠發展並不利。由此,微軟開始提出了Silverlight技術,並且將Silverlight技術作為一個重要棋子在各種跨平台瀏覽器應用中大力推廣,其推廣費用可能超出各位的想像。

在Silverlight取得階段性成功後,Office也推出了Office 365這樣的瀏覽器版本,更多的軟體開始依託Silverlight逐步向雲端遷移。既不影響原有的軟體生態鏈,也會在未來的雲計算市場佔領一席之地。

個人答案,僅供參考。


首先可以看一下微軟的態度,它是微軟豐富型互聯網應用程序(Rich Internet Application)策略的主要應用程序開發平台之一。它以瀏覽器的外掛組件方式,提供 Web 應用程序中多媒體(含影音流與音效流)與高度交互性前端應用程序的解決方案,同時它也是微軟 UX(用戶經驗)策略中的一環,也是微軟試圖將美術設計和程序開發人員的工作明確切分與協同合作發展應用程序的嘗試之一。

微軟對抗flash的產品之一……基本上可以跨平台,用戶體驗一致,安裝簡單。

它是一個跨瀏覽器的、跨平台的插件,為Web帶來下一代多媒體體驗和豐富的互動式應用程序體驗。Silverlight並不是視頻播放器,而是微軟為了爭奪急速增長的在線視頻市場而開發的新一代插件工具。

由此看來它的作用了,微軟要佔領的市場還有很多……


Silverlight != XAML-Based UI


打通桌面(windows),終端(xbox,wp7),控制並維持自身產業鏈(技術+服務+終端);


Silverlight以及WPF從誕生那天起,首先是作為一個橋樑幫助UX Designer把創意直接推送給程序員,後者不再需要用編程語言去實現UX創意,而只需要將XML描述的UI,動畫等嵌入到程序當中。這極大提高了創意實現的效率。相比Flash只能在瀏覽器中運行,Silverlight程序的部署更靈活,開發工具的支持也更好。

HTML5對於傳統的Windows開發人員而言需要重新學習,在其前途不明朗的時候微軟不會輕易做出放棄Silverlight和.Net Framework的決定。


推薦閱讀:

如何看待5月10日微軟在中國開始預售HoloLens?
HoloLens 的實際效果如何?
如何評價「微軟計劃推出HoloLens消費版,售價低於1000美元「?

TAG:前端開發 | 微軟Microsoft | WindowsPhone7 | Xbox | Silverlight |