什麼是 Silverlight 2.0 ?

最近一直有人問我:什麼是 Silverlight 2.0 ? 然後會出現以下的對話…

這個問題有點複雜,如果要徹底瞭解Silverlight 2.0,可能要等工作室年底的 Silverlight 2.0 新書,將其讀完後才能有完整的認識。XD

我通常是這樣說的:你可以先從這個觀點看待 Silverlight ,「Silverlight 2.0 是一種嵌入網頁,在瀏覽器上面跑的桌面應用程式] 。

問題來了,「桌面應用程式用 WINFORM 來寫就很完美了」 …

我的回答是:WIN FORM在個人PC上很方便,一旦跨越網路就不怎麼好玩了(我的意思是,當WINFORM碰上網路,這不是一個好的Solution)。

「WIN FORM不好,WEB FORM不就得了,我用ASP.NET還蠻順手的」,對話到這裏,這是普遍會遇到的另外一個問題…

我的回答是:WEB FORM 跨越網路很方便,但是一旦傳到使用者的桌面,就很難與使用者作互動,特別是需要高度敏捷的互動式UI(我的意思是,當 WEBFORM 碰上桌面,這不是一個好的Solution)。

然後,Ajax 這個名詞會在這個時候出現,「桌面UI互動性的問題,Ajax 不就幫我們解決了,我幹麻學Silverlight ?」

這個問題很好,而我的回答是:「Ajax 只幫我們作了一半的事,它是在一個不完美的環境下,被發展出來解決問題的折衷方法」,所謂一半的事,就是幫網頁處理與伺服器溝通的問題,然後依賴薄弱的瀏覽器運算能力,實作出僅僅堪用的互動式網頁。

「桌面的運算能力是關鍵」,去年如果聽過我主講的Silverlight體驗課程,應該能體會這句話的意義。

沒有強大的運算能力,要發展出像樣的桌面程式,幾乎是不可能的事,這也是 Ajax 的應用,很快到達瓶頸的原因。

桌面程式沒有辦法被網頁完全取代,兩個非常重要的因素:

1.高度敏捷的互動式UI。
2.客戶端資源的存取能力。

Silverlight 2.0 內建的 .NET Framework 提供了上述兩點所需的運算能力, 這一部份,是開發人員需要 Silverlight 2.0 真正的關鍵。

這篇文章或許還不能給你真正清楚的概念,不過,別急,後面還有,我們慢慢來。

2 則留言:

匿名 提到...

之前我一直有個疑問, Javascript在Client端可以做運算, 所以速度快, 但所做的運算簡單. Postback回Server可以做很強大的運算, 但會受限於網路傳輸速度. 那有沒有一種在Client跑的Server, 運算能力介於Browser的Javascript及Sever中間, 但又不受限於網路頻寬.

這個在Client跑的Server就是Silverlight嗎?

康廷數位文教網 提到...

Silverlight 嚴格說來已經死掉了,現在相關技術的整個發展都轉向 Windows 8 平台的 Metro UI 技術了,除非你想發展這一類的應用,否則的話,Silverlight 就忘了他吧,我已經完全放棄了 …

沒有在 Client 跑的 Server ,你要的答案其實就是 HTML5 ,這也是我目前完全專注的技術了 :)