from InfoQ <http://www.infoq.com/cn/news/2009/02/grails-10-tips>
如果要列舉近些年來Java領(lǐng)域中最令人激動的事件,Grails的誕生絕對應(yīng)該榜上有名。在打開Grails官方網(wǎng)站<http://www.grails.org/>時,
你會在瀏覽器的標題欄上看到這樣的內(nèi)容:“Grails - 尋找就此結(jié)束”。雖然這句話不見得適用于所有場合,但對于不少從事Java
Web開發(fā)的人來說,贊同者恐怕不在少數(shù)。由于具備Rails風格的框架、兼容絕大多數(shù)Java語法的Groovy動態(tài)語言、以業(yè)界口碑良好的框架為基
礎(chǔ)、對企業(yè)現(xiàn)有Java開發(fā)資產(chǎn)的保護、Plugin架構(gòu)等特點,再加上Spring社區(qū)的強力介入,Grails行情看漲應(yīng)該是意料之中的。
然而Grails卻沒有看上去那么簡單,在其包裝的糖衣之下,有著許多作為Java Web開發(fā)者不得不了解的知識。最近,Peter
Delahunty<http://blog.peterdelahunty.com/>
發(fā)表了題為Grails開發(fā)者需要知道的10個技巧<http://blog.peterdelahunty.com/2009/02/10-ten-tips-for-grails-develop...>
的博文。不要被標題所迷惑了,這里所說的“技巧”可不是那些語言層面的“技巧”,把它們稱為“建議”恐怕更合適一些。
技巧1:把Grails的書籍買來讀讀。對此,Peter Delahunty推薦了已出版的《Definitive Guide to Grails 2nd
edition》和《Groovy and Grails Recipes》,以及即將出版的《Grails in Action》。
技巧2:學(xué)習(xí)Groovy,并按照Groovy進行思考。Peter Delahunty通過一個例子說明了Java思維和Groovy思維的不同。
這兒有個好例子:
傳播操作符(spread operator):*
在Java中,要想遍歷一組人并收集人名。我可能得這樣寫:
List names = new ArrayList();
for (Iterator iterator = people.iterator(); iterator.hasNext();) {
Person person = (Person) iterator.next();
names.add(person.getName());
}
System.out.println(names);
用Groovy,我會這么寫:
def names = people*.name
println names
呵呵,簡單吧。我還可以這樣寫:
def names = people.collect {it.name}
println names
在這個建議中,他列舉了一些資源:
- Groovy官方網(wǎng)站 <http://groovy.codehaus.org/>
- PLEAC <http://pleac.sourceforge.net/pleac_groovy/index.html>
以及一些書籍:
- Programming Groovy
- Groovy Recipies
- Groovy in action
技巧3:了解Grails的各個插件。Peter
Delahunty給出的理由:Grails本身是個插件系統(tǒng),而且現(xiàn)在已經(jīng)有大量的插件可供下載。在自行實現(xiàn)之前,不妨看看其中是否有稱手的。
技巧4:學(xué)習(xí)Hibernate和Spring。這一點不難理解,既然Grails是建立在這些工具之上的,了解這些工具本身的使用,對于熟練使用Grails 自然大有脾益。
技巧5:使單元測試、集成測試和一般測試的自動化。Peter Delahunty在這里推薦了兩個Grails的插件:Testing
Plugin<http://www.grails.org/Testing+Plugin>
和Functional testing plugin
<http://www.grails.org/Grails+Functional+Testing>。前者將成為Grails
1.1的內(nèi)置插件。
技巧6:使用好的IDE。Peter Delahunty表示,他自己使用的是Intellij,但對于Netbeans也寄予厚望。
技巧7:學(xué)習(xí)并使用HTML W3C標準。“遵循標準將消除你90%的問題”,Peter Delahunty如是說。
技巧8:看上去不錯一定不錯。這其實說的是“面子工程”,通過提高應(yīng)用的外觀設(shè)計來提高應(yīng)用的競爭力。Peter Delahunty給出了2個資源:
- 99designs.com
- 圓角矩形產(chǎn)生器 <http://www.roundedcornr.com/>
技巧9:使用Firefox上的Firebug。對于瀏覽器端的調(diào)試工作,F(xiàn)irebug絕對是一個必備工具。
技巧10:跟上Groovy和Grails社區(qū)的步伐。在這最后一個建議中,Peter
Delahunty給出了獲取Groovy和Grails信息的主要資源鏈接:
- Grails官方網(wǎng)站 <http://www.grails.org/>
- Groovy和Grails相關(guān)的博客 <http://groovyblogs.org/entries/recent>
- Grails創(chuàng)始人Graeme Rocher的Twitter <http://twitter.com/graemerocher>
- Groovy項目領(lǐng)導(dǎo)人Guillaume Laforge的Twitter <http://twitter.com/glaforge>
- Groovyblogs.org的創(chuàng)始人Glen Smith <http://twitter.com/glen_a_smith>
請務(wù)必閱讀Peter Delahunty的原文<http://blog.peterdelahunty.com/2009/02/10-ten-tips-for-grails-develop...>。對于Grails的新老使用者,你都可以從Peter
Delahunty的建議中有所收獲。關(guān)于InfoQ中文站Groovy和Grails的其它內(nèi)容,請訪問這里<http://www.infoq.com/cn/groovy>
和這里 <http://www.infoq.com/cn/grails>。