2012-03-07 38 views
0

對於新的應用程序,我需要決定使用哪種前端技術。我知道這個問題之前已經被問過了,我發現了一些研究,博客和其他參考資料,討論了Flash與Silverlight,HTML5與JavaFX,但在我的情況下,業務需求會使情況複雜化。在選擇前端技術方面需要幫助

應用程序必須作爲脫機的獨立桌面應用程序運行,並作爲在線客戶端 - 服務器應用程序運行,並且可能將來還需要在平板電腦上運行。爲了減少維護,我們希望只有一個代碼庫。服務器端應該最好在Linux上運行。

從早期的項目中,我們有關於Java和Flex的客戶端 - 服務器配置方面的經驗,但是我還沒有發現是否可以將它打包爲獨立應用程序。 Java和JavaFX將是另一種選擇,但JavaFX似乎還不成熟,缺乏開發工具。如果我們使用Silverlight,我們或多或少必須切換到後端的C#或C++,或者使用諸如JNBridge之類的東西,這會使獨立安裝更加複雜。而HTML5將是未來的選擇,但不適合複雜的應用程序,我們可能會遇到瀏覽器依賴性。

所以我還沒有找到理想的解決方案,並可以使用一些幫助。也許我們只需要限制服務器/後端的一個代碼庫需求,並接受不同用途的不同前端。

任何想法讚賞。謝謝!

+0

棘手的問題,因爲我相信2012年初沒有「最佳」選擇。「可能需要在平板電腦上運行」的要求是非常昂貴的,尤其是可能不需要。 – SteveD 2012-03-07 09:42:34

回答

0

閃光/的Flex/AIR的東西,現在上有一個截止日期,由於Adobe公司於2011年

的Silverlight月底公告的可怕處理類似的方式在Flex /閃光燈/ AIR的是痛苦微軟公佈的未來方向和開發人員感覺他們在Silverlight上的投資現在被浪費了。

JavaFX遲到了派對,最新版本不適用於所有平臺。他們目前是否針對移動設備?

HTML 5過度炒作,主流瀏覽器沒有足夠的統一功能。它會到達那裏,但那不是今天。

切換到一個完全陌生的技術堆棧將會代價高昂 - 當你和你的團隊都是新手時,你無法做出任何合理的估計。

就我個人而言,我建議從熟悉的技術開始,這些技術似乎是Java和Flex,並將AIR添加到該混合中。

我真的會推回平板電腦支持,因爲我認爲這個要求很模糊,但對項目有很大的影響。我沒有看到桌面上的傳統用戶界面在平板電腦上運行良好。我想說平板電腦需要自己的用戶界面。

2

怎麼樣的Adobe AIR,它可以脫機運行,或作爲客戶端與服務器進行通信,並支持多種平臺,如Windows/Linux的/安卓等

0

如果需要在平板電腦上運行,並且運行斷開你最終將不得不編寫多個應用程序,因爲iOS(iPad)不運行SL/Air或JavaFX,據我所知Android不運行SL或Air。使用Silverlight並不排除在Linux上顯示Web服務的後端只會讓它更難一些。現在,如果你可以放棄斷開連接,那麼我會一直使用HTML5,否則只是需要爲Windows/Mac機器編寫一個SL應用程序,用於iPad的iOS應用程序或可能是JavaFX(或者可能空氣,檢查在Android平板電腦的支持)爲那些。

+0

我確實有空氣在我的Droid 3上運行,帶有一些應用程序... – 2012-03-07 09:19:08

+0

Android完全支持AIR應用程序。 – MaxSan 2012-03-07 09:19:16