2010-03-18 27 views
1

目前我正在使用的基於Web的應用程序是來自Windows應用程序的端口。這個應用程序非常密集。有幾十個模塊,每個模塊都有多個表單(數據輸入屏幕)和報表,而表單有許多字段,同樣也有報表。將Windows應用程序移植到網絡時,堅持常規Web技術還是採用RIA更明智?

我一直在嘗試確定最適合表示層的體系結構。有許多功能不便於攜帶,例如打印(這也非常複雜)。對於其他大多數人,我計劃給我們「Ext JS」庫,它看起來能夠處理開箱即用的大約70%的複雜性,而剩餘的我將自定義編碼或擴展Ext JS。

話雖如此(抱歉,因爲是如此描述),我想知道,如果這是一個Intranet應用程序,爲什麼不將整個應用程序移植到SilverLight?雖然我擅長.Net,但我對SilverLight有些陌生。考慮到我知道我的目標受衆,並且該軟件將用於每個座位的許可證,那麼騎上SilverLight會更好還是堅持常規網絡(XHTML,JS,CSS等)更好?此外,我將來必須支持多種設備,並且考慮到許多設備的SilverLight插件尚未出現,是否會有風險?

回答

1

國際海事組織,如果你正在開發一個網絡應用程序,那麼是的,開發它作爲一個RIA。

技術的選擇取決於您。我更喜歡jQuery,並從未使用過ExtJS。但我已經看過它了,如果你的應用程序是一個Windows應用程序的端口,並有許多傳統的UI元素,如窗體,輸入框,工具欄,菜單,按鈕等,那麼去ExtJS。

對於ExtJS中無法使用的一些控件,您可以輕鬆擴展ExtJS。

關於.NET:ExtJS完全是與服務器技術無關的,所以你可以在.NET中開發你的應用程序,並仍然使用ExtJS UI。事實上,我寧願做這樣的實施。

關於Silverlight:我稍微反對使用silverlight,主要是因爲它需要安裝一個在所有平臺上都不可用的插件。但由於您的應用程序是一個Intranet應用程序,您的用戶羣將在您的掌控之中。但是你應該確保未來關於工作站平臺的任何決定都不會影響你的應用程序的工作。

乾杯

0

我認爲您需要思考僅基於Silverlight的解決方案帶來的不便。與Flash一樣,它需要在每個工作站都安裝一個插件,因此它會丟失一些Web應用程序的前提(只需要瀏覽器就可以在任何地方運行)。此外,儘管Silverlight取得了巨大的進步,但它還不是一個廣泛支持的標準,它控制着一家公司,後來可能會在您使用的平臺的非常重要的事項上爲您做出決定,並使其過時或無用(在最壞的情況下)。

Ext JS是一個完全用Javascript開發的偉大的庫,所以你可以觸摸任何適合你需要的東西。如果您所依賴的Windows應用程序分層次良好,那麼您的工作可能並不那麼困難。

如果你是一個asp.net開發者,你可以看看asp.net mvc,這是一組使用相同的舊C#或VB實現MVC模式的web應用程序。除了asp.net mvc之後的開發者,已經花了很多工作來使它適合於使用JavaScript庫,如jQuery

快樂編碼!!!

1

在這種情況下是否使用Silverlight over HTML/JS等將取決於2個關鍵因素。

  • 什麼是你familar與已經
  • 你需要什麼類型和範圍的設備達到。

如果您已經對HTML + ExtJS感到滿意,那麼它必須是對它有利的巨大讚成。

Silverlight可能可用的設備範圍(例如Windows Phone 7以及Moonlight,我甚至聽說可能有Andriod和Symbian的端口)正在不斷增加。然而,對於這一點,而不是所有人的真正早期時間可能會以對您有用的形式出現。

話雖如此,應該承認,設計用於桌面的UI在小型設備上無法正常工作。因此,無論您使用哪種技術,您都需要爲其他設備開發一些特定於任務的UI。這反過來意味着你沒有理由試圖堅持所有設備的單一技術。

我想你應該先仔細看看WCF,REST和OData。將應用程序良好地分層爲使用這些應用程序的有用模型可以更容易地爲客戶端使用各種前端技術。

如果您使用.NET和其他Microsoft技術,那麼您應該認真考慮將JQuery和ASP.NET MVC用作另一種潛在的前端技術。

相關問題