Grails Ajax富客戶端插件橫向大比拼
軟件要想成功,必須要有一個(gè)能支撐它走下去的良好生態(tài)環(huán)境。憑借其插件架構(gòu),Grails已經(jīng)為自己的發(fā)展打下了良好的基礎(chǔ)??粗粩嘣鲩L(zhǎng)的Grails插件列表,不難想象Grails將來的發(fā)展。不斷增長(zhǎng)的插件也讓開發(fā)者有了可以選擇的機(jī)會(huì),尤其是在面對(duì)那些作用相同或相近的插件時(shí),這種情況尤其突出。在這樣的情況下,一個(gè)很自然的問題就是“它們中哪個(gè)是***的?”
最近,Dean Del Ponte就撰文對(duì)4個(gè)Grails的Ajax富客戶端插件進(jìn)行了對(duì)比,并給出了自己的評(píng)判。對(duì)于那些重量級(jí)的富客戶解決方案,如Flex或JavaFX,作者自稱并未考慮。Dean Del Ponte首先對(duì)這4個(gè)插件的優(yōu)缺點(diǎn)進(jìn)行了對(duì)比:
Prototype/Scriptaculous
優(yōu)點(diǎn)
缺省包含在Grails中
流行的框架,擁有API文檔并可在線獲得幫助
Prototype的核心功能比較容易上手;注意,Scriptaculous的學(xué)習(xí)曲線比Prototype更短。
良好的社區(qū)支持。有許多免費(fèi)的第三方組件。
缺點(diǎn)
除了API,文檔不詳細(xì)且難以找到
不再是“帶頭大哥”。常常扮演其他框架的追隨者。
學(xué)習(xí)曲線比其他框架要陡得多
GrailsUI插件
優(yōu)點(diǎn)
集成了支持10個(gè)YUI組件的GSP標(biāo)簽
GrailsUI插件wiki頁(yè)面和YUI主頁(yè)都有詳盡的文檔。
SpringSource開發(fā)人員的參與
缺點(diǎn)
沒有給所有YUI組件提供GSP標(biāo)簽實(shí)現(xiàn)
對(duì)于那些有GSP標(biāo)簽的YUI組件,又不支持全部特性(如,數(shù)據(jù)表格的單元格內(nèi)的編輯)
可用的第三方Y(jié)UI組件有限
RichUI插件
優(yōu)點(diǎn)
提供了21種富客戶端組件的實(shí)現(xiàn)
大量的GSP標(biāo)簽集成
文檔化做得不錯(cuò)
缺點(diǎn)
包含了多個(gè)底層JavaScript框架,有和其他插件沖突的可能
jQuery
優(yōu)點(diǎn)
詳盡的文檔,并帶有例程
大型社區(qū)
大型的組件庫(kù),其數(shù)量是現(xiàn)有JavaScript框架中最多的
從項(xiàng)目網(wǎng)站可以訪問大量的組件(jQuery稱它們是插件)
簡(jiǎn)單、易用的語法
缺點(diǎn)
除了Grails缺省的標(biāo)簽,沒有提供其他GSP標(biāo)簽的集成
要求大致了解jQuery API、語法和JavaScript才能有效地使用
回到我們最初的那個(gè)問題:“它們中哪個(gè)***?”,作者的回答卻是相當(dāng)圓滑:“取決于你的需要”。各位也不必太過在意,因?yàn)檫@種事情本來也是“蘿卜白菜各有所愛”。當(dāng)然,作者還是給出了他的***:RichUI插件。
文末,作者給出了他自己對(duì)于這4個(gè)插件的綜合評(píng)級(jí):
RichUI
易用,而且和GSP標(biāo)簽集成得不錯(cuò)。不需要JavaScript的知識(shí)。對(duì)于Grails的新手和老手都一視同仁。
GrailsUI
不象RichUI插件那樣容易使用,但是文檔很好,而且提供了一些不錯(cuò)的組件和良好的GSP標(biāo)簽集成。
jQuery
如果你對(duì)JavaScript沒什么不適應(yīng)并想學(xué)習(xí)jQuery,你就可以去使用它。它的使用并沒有什么限制,對(duì)于那些對(duì)沒有被JavaScript嚇倒的開發(fā)者,我強(qiáng)烈地推薦它。
Prototype/Scriptaculous
要是你不想或不能在你的項(xiàng)目中包含其他框架,就用它吧。它不象jQuery那樣好用,但它有大型的社區(qū),而且文檔也能找到。
在該文的評(píng)論部分,有讀者提到了為何沒有涉及Grails的ZK 插件。顯然,這篇文章并沒有涉及所有的Grails Ajax插件,但它確實(shí)包含了Grails插件中目前***的幾個(gè)Ajax插件。
【編輯推薦】