2012-01-04 136 views
2

我在我的項目中使用Ext GWT。爲什麼建議在使用Ext GWT時使用最少量的本地GWT小部件和類?這是因爲客戶端代碼包的大小增加還是其他原因?混合GWT和外部GWT

回答

5

我不會在使用這個機會的Ext GWT,因爲真正的「危險」是未來的可移植性和可維護性問題。建議不要將太多本地GWT小部件與Ext GWT小部件混合使用,是因爲Ext的小部件與其本地GWT表親具有不同的「外觀和感覺」。 GWT使用(大部分)原生HTML元素,而Ext GWT使用幾乎完全自定義的元素。

一個例子是Ext的ComboBox(左),它看起來不像GWT的ListBox(右)。

Ext GWT ComboBox VS GWT ListBox

這是在Windows上。在Mac上,還有更多的差距。

雖然CSS不會發生碰撞。 Ext GWT使用自定義樣式名稱,前綴爲x-ext-,而GWT樣式名稱以gwt-開頭。

所以我的看法是:如果您希望添加一些很酷的小部件而犧牲未來的可移植性和可維護性,請使用Ext GWT。如果您有意在將來可能會刪除專有的Ext GWT內容,那麼您可能會在一些漂亮的UI元素中投入自己的注意力。 Ext的東西幾乎沒有任何「只是UI」的概念。你們都被迫深入整合它。

爲了記錄,我將Ext GWT用於一堆東西,後來承擔了後來去除專有元素的痛苦。回想起來,我從來不應該這樣做。

+0

我認爲這個評論引用了Ext GWT的2.x版本,而不是3.0版本(在我寫這篇文章的測試版中)? – 2012-01-16 19:10:29

+0

另外,不使用小工具工具包(如Ext GWT)的問題是,如果您需要複雜的可編輯,可排序,可搜索,可過濾等Grid(表格),那麼您會怎麼做? Ext GWT有一個很好的例子,但是,一旦你使用它,你必須使用它們的接口來加載和處理數據。 – 2012-01-16 19:11:52

+0

@ TedM.Young我不會說任何不被認爲是最終版本的版本。關於需要複雜的小部件:建立自己的小部件。我不建議任何人跳上「框架擴展潮流」。 Java和GWT爲您提供了所有您需要的工具,這取決於您(知道如何)正確使用它們。預焙解決方案很少解決潛在的需求。毫無疑問,有一天你會需要GWT或Ext GWT提供的東西。然後怎樣呢?添加_another_擴展名?這是一個懶惰編碼的經典案例。每個人都知道這種態度導致哪個小溪... – 2012-01-16 20:38:58

0

EXT GWT基於GWT,並通過提供一組漂亮的UI元素進行擴展。這些元素是通過創建您無法直接訪問的自定義CSS生成的。而在GWT的情況下,所有的Widget都可以通過項目的CSS文件進行修改。

因此,混合2種編程語言並不是一種好方法,在這種語言中,首先你不能控制CSS,而在第二種情況下你可以做到這一點。如果您有相同的樣式名稱,則可能也會有衝突。

而且,因爲這link說,也有一些矛盾,而混合來自不同GWT擴展,例如SmartGWT的和GWT(同樣適用於extgwt和GWT)組件