2010-06-02 84 views
6

我正在與C#和WPF合作,我想研究一些與Web編程相關的內容。我已經知道HTML和CSS,並且因爲我正在使用WPF,所以我想知道是否進入Silverlight是開始Web開發的一個好選擇。它可以替代服務器端編程語言,如PHP或ASP .NET嗎?
你有什麼建議?
非常感謝Silverlight提供什麼?

回答

6

它可以讓你在極其豐富的跨平臺環境下編寫.NET代碼。

Silverlight不僅可以在PC和Mac上工作,也可以在瀏覽器外工作,但它是即將到來的Phone 7(我相信它將成爲企業移動平臺的首選)上創建應用程序的主要工具。很快你甚至可以對付Xbox!

許多頂尖行業人士似乎都在說未來幾年將在Silverlight中編寫大量的業務線應用程序。這是一個非常令人興奮的平臺,現在Silverlight 4已經不在了,它終於可以在黃金時段準備好了。

有一條學習曲線。 Xaml,數據訪問(不僅有一些棘手的異步方面的問題,與PHP和ASP.NET不同,您必須使用RIA或類似Web服務來獲取數據),更多涉及的事件系統以及其他新概念合作讓它變得有點複雜。

+0

+1,用於跨平臺,並且基本上可以同時學習Windows Phone 7,Xbox和Web。 – 2010-06-02 15:07:54

4

Silverlight是一個類似於Flash的插件。它並不能代替ASP.NET,但肯定是讚美它。

至於它是從WPF的邏輯步驟 - 是的! Silverlight實際上是WPF的一個子集,並且你從WPF獲悉的大部分內容將直接轉移到Silverlight。你只需要學習一些關於將頁面嵌入Silverlight應用程序的內容,如果你使用的是Visual Studio,那麼這將只是一個非常簡單的ASP.NET頁面。

+0

動態內容管理怎麼樣?例如,如果我想將論壇添加到我的網站,是否可以通過silverlight插件進行管理?如果我正確理解你的答案,我只需要知道服務器端語言就可以將Silverlight應用程序嵌入到網頁中。對?再次感謝你。 – 2010-06-02 13:39:13

+0

那麼,silverlight是一個網絡客戶端,它恰好與剛剛在瀏覽器中呈現的桌面客戶端幾乎完全相同。數據仍然通過網絡傳輸,並且HTML頁面(或類似頁面)仍然被髮送和呈現。所以,C#是服務器代碼,而XAML是客戶端代碼。恰巧發生的事情是,使用Silverlight的客戶端在網絡上,而不是在本地機器上。那有意義嗎?您需要了解網絡應用程序的客戶端和服務器部分,但它們看起來非常非常相似,代碼非常類似於桌面版本 - 按設計。 – 2010-06-02 13:45:50

1

當我考慮Silverlight的使用情況,我一般儘量想一些事情:

  • 請問我試圖發展需要通過網頁瀏覽器輕鬆跨平臺部署應用程序?
    • Silverlight比WPF更容易訪問,因爲它可以在多個平臺上的多個瀏覽器中使用。
  • 我需要開發足夠複雜(或「足夠豐富」)的應用程序,以便從開發Silvelright客戶端的簡化方法中受益?
    • 在多個瀏覽器中編寫看起來很棒的Web應用程序可能是一個真正的挑戰。一般來說,一個基於html的解決方案(如ASP.NET,PHP,Ruby on Rails,選擇你的毒藥)將最容易被最廣泛的受衆訪問,但由於必須部署到多個瀏覽器。但是,如果您開發的解決方案是類似於您在桌面上找到的複雜客戶端應用程序,那麼Silverlight應該爲您的最終用戶提供更豐富的體驗,併爲開發人員提供更簡化的方法。

我們都看到有好有壞的Silverlight應用程序的實現。

最好的Silverlight應用程序提供了豐富的用戶體驗,並且應該很容易證明用戶爲什麼需要Silverlight。例如,我認爲Silverlight的一個很好的用例是一家撰寫「企業對企業」應用程序的公司,他們的客戶,供應商和/或其他業務合作伙伴可以使用它來與其域中的數據進行交互。這不是替代面向公衆的網站的理想解決方案,但開發Silverlight「業務解決方案」的成本要遠低於純粹的HTML相關技術的成本。

另一方面,Silverlight的最糟糕的實現是可以很容易地被HTML替換爲一些用於UI支持的JavaScript。我正在考慮完全在Silverlight中引發的網站,而沒有隻是試圖呈現博客內容的樣式。這種類型的應用程序告訴用戶,他們下載Silverlight以使用他們的應用程序是值得的嗎?

我希望這有助於回答你的問題。

0

Silverlight不是開始Web開發的好選擇。

它並不會替代服務器端Web語言,如ASP.NET。但它通過爲客戶端提供良好的RIA界面和精美動畫做得很好。

當涉及到數據庫的通信,特別是對於具有很大的壓力大動態應用程序,Silverlight的相比,ASP.NET

所以你一定要開始你的企業進入世界網絡與ASP變弱的選擇.NET,也許爲了某些目的使用Silverlight,主要與動畫和高質量的客戶端接口有關。事實上,如果將來有些東西可能會被替換,那麼它就是Flash和Silverlight by nothing else than HTML 5

+1

你的事實是錯誤的。 1.有幾個框架允許在沒有ASP.NET的情況下完全在Silverlight中開發複雜的應用程序,只是服務器端的一個非常簡單的數據層。因此,Silverlight **可以並且可以替代服務器端Web語言,如ASP.NET。「今天。 2.通過正確的數據層,對於大型動態應用程序中的數據庫通信,Silverlight是比ASP.NET更強的**選擇。這是因爲a。數據獲取可以在後臺進行並且b。數據流可以根據用戶的具體情況進行定製。 – 2010-06-02 19:08:32

+0

數據提取可以在任何服務器端語言的AJAX背景下進行,服務器端邏輯比Flash和Silverlight等客戶端平臺使用的Web服務快得多。 反正沒有時間爭論,也不在乎信譽分數。而我的事實是真實的。 – SiN 2010-06-02 20:09:30

+0

您的意見是屬於您自己的,但我毫不懷疑HTML5及其繼任者將永遠比Silverlight之類落後10多年,因此只會被那些被政治或無知用於使用它們的人所使用。我喜歡在StackOverflow上看到的評論,內容如下:「我同意ASP.NET Web應用程序現在與10年前的桌面應用程序相當。」真正?真正。 – 2010-06-02 20:12:51

0

你也可以從XBAP中的WPF開始 - 正如許多其他答案所說的那樣,這取決於你想做什麼。部分信任XBAP與WCF結合的數據對我來說確實很有用。