最近一直有人問我:什麼是 Silverlight 2.0 ? 然後會出現以下的對話…
這個問題有點複雜,如果要徹底瞭解Silverlight 2.0,可能要等工作室年底的 Silverlight 2.0 新書,將其讀完後才能有完整的認識。XD
我通常是這樣說的:你可以先從這個觀點看待 Silverlight ,「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 真正的關鍵。
這篇文章或許還不能給你真正清楚的概念,不過,別急,後面還有,我們慢慢來。