這個博客有許多經驗豐富的GWT的用戶輸入,有一些很棒的討論點的能力。我個人對各種UI框架有豐富的經驗。我會補充我的兩分錢。讓我們看一下根本優勢和GWT
基本優勢
GWT需要在網絡層編程JAVA的缺點。所以,Java的明顯優勢開始發揮作用。它將提供面向對象的編程。它還會提供很好的調試和編譯時間檢查。由於它生成HTML和Javascript,因此它也能夠隱藏其生成器中的一些複雜性。
主要缺點
缺點來自相同的語句開始。 GWT將Web層編程轉換爲JAVA。如果你知道JAVA,那麼你可能永遠不會選擇另一種語言來編寫你的業務邏輯。這是自給自足的,很棒。但是當涉及到爲JAVA應用程序編寫配置時。我們使用屬性文件,數據庫,XML等。我們從不將配置存儲在JAVA類文件中。想一想,那是爲什麼?
這是因爲配置是一個靜態數據。它通常需要層次結構。它應該是可讀的。它從不需要編譯。它不需要JAVA編程語言的知識。總之,這是一個不同的球賽。現在的問題是,它與我們的討論有何關係?
現在,讓我們考慮一個網頁。你認爲當我們寫網頁時,我們寫了一個業務邏輯?絕對不。網頁只是一個配置。它是分層容器和字段的配置。我們需要爲將從網頁捕獲並顯示的數據編寫業務邏輯,而不是創建網頁本身。
上一段做了非常強烈的陳述。這將解釋爲什麼基於HTML和XML的網頁仍然是最受歡迎的網頁。 XML是編寫配置的最佳業務。框架必須允許將網頁與業務邏輯(MVC框架的目標)清晰分離。通過這樣做,網頁設計師將能夠運用他的可視化和藝術技能,通過配置XML來創建精美的網頁,而不用擔心編程語言的錯綜複雜。開發人員將能夠在商業JAVA中使用他們最好的商業邏輯。
最後,讓我們直接討論其影響。 GWT打破了這個原則,所以它必然會失敗。開發GWT應用程序的成本會非常高,因爲您需要multiskill程序員來編寫網頁。所需的外觀和感覺將很難實現。由於不必要的編譯,修改網頁的轉身時間將非常高。最後,由於您正在使用JAVA編寫網頁,因此使用業務邏輯很容易破壞它。不知不覺中,你會引入必須避免的複雜性。
這不是以破碎的英語來哄騙你的技術的地方 – Yarin 2010-06-20 12:27:24