2010-12-16 192 views
12

我想知道是否有GWT不適合的特定情況?例如,使用GWT重新開發堆棧溢出是否合適?什麼時候使用GWT,什麼時候不需要

我正在開發一個具有Java Restlet API的應用程序,並且我正在計劃使用GWT(以前我只是使用了後臺PHP代碼調用API的bog標準HTML/CSS)。我想知道爲什麼我不應該選擇這樣做嗎?

+2

GWT旨在簡化創建Web「應用程序」的過程。我不認爲在GWT中重新開發像Stackoverflow這樣的「網站」是一個好主意。 Google文檔和GMail在我們談到Web應用程序時會想到(您不會離開頁面,它會使用Ajax動態刷新,交互式LnF像真實應用程序一樣。)當然,YMMV :-) – 2010-12-16 17:02:10

回答

13

我的答案並不完整,但我相信下面的項目符號可能會有用。

  • GWT不應該用於主要提供文本信息和一些圖片的應用程序,即不是非常互動。對於這些應用程序,GWT不會帶來很多好處。
  • GWT不應該被具有強大的網絡技能和相對較弱的Java技能的團隊使用。
  • 如果您需要支持GWT不正式支持的瀏覽器,請不要使用GWT。例如MSIE 6.
+3

GWT支持MSIE 6:http://code.google.com/webtoolkit/doc/latest/FAQ_GettingStarted.html#What_browsers_does_GWT_support?實際上,它甚至爲它編譯了一個特殊的排列,並提供了很多解決方法。你的意思是IE 5.5? – 2010-12-17 00:57:38

3

恕我直言如果你有一個像博客,新聞門戶網站等靜態網站,每個頁面都有自己的身份,並代表一個實體,並單獨要求不要單獨使用GWT(你仍然可以將其與服務器端生成的頁面(如FB)混合使用。

對於大多數其他網絡應用程序,特別是如果用戶登錄使用您的應用程序或您的應用程序是交互式的,並且沒有任何技術問題使用GWT(如Gmail設計)。

4

看看這個話題GWT for big projects?

GWT是操縱在單一頁面複雜的操作的最佳選擇。比如Google Wave,Google郵件......你可以輕鬆更新(ajax)頁面的任何部分。

由於GWT是java-to-javascript編譯器,因此用戶應該等待加載.js文件,如果您的web應用程序很大,則會導致很多問題。您的項目越大,JavaScript文件越大,用戶應該等待加載.js文件的用戶越多

0

我建議不惜任何代價避免GWT。我有與GWT開發巨大項目的經驗,這是一場噩夢,因爲長期的發展循環。如果您在angularjs/react/jquery中有應用程序,則更新源代碼,請單擊F5並重新加載它。您可以快速調試單擊F12。

如果你在巨大的項目上使用GWT,你必須等待大約1分鐘才能編譯應用程序。然後,沒有好的方法來調試它。谷歌提供了特殊的瀏覽器插件,但它們工作不穩定,並且不支持最新版本的瀏覽器,所以我不得不降級FF。巨大的GWT應用程序調試需要大量的Java內存,所以你必須爲tomcat提供更多的內存。最後在實踐中,你無法避免學習js,如果你做現代web開發,你將不得不學習它。

UPDATE 15.05.2017:我的回答是由GWT粉絲低估的,但我想說明的是,我的信息是最新的:1頁hello world應用程序重建cyrcle與上一個IDEA和10Gb mem大約需要30秒SSD筆記本。我還問過在生產中有GWT的朋友是否有嚴肅的項目:他們聲稱2分鐘是平均重新部署時間。

+0

這顯然是椅子和鍵盤之間的問題。 這裏提到的所有東西都是假的,或者在5年前已經修復。您還可以使用GWT在F12中進行調試,您只會看到java源代碼,甚至可以從eclipse或intellij進行調試。你不需要任何瀏覽器插件。您甚至不需要用於調試的網絡服務器,因爲它全部內置於所提供的工具中。 – Knarf 2017-03-23 13:08:04

+0

你聽說過superdev模式嗎? – Spiff 2017-03-23 22:15:16

相關問題