BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Grails开发者需要知道的10个技巧

| 作者 胡键 关注 0 他的粉丝 发布于 2009年2月28日. 估计阅读时间: 5 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

如果要列举近些年来Java领域中最令人激动的事件,Grails的诞生绝对应该榜上有名。在打开Grails官方网站时,你会在浏览器的标题栏上看到这样的内容:“Grails - 寻找就此结束”。虽然这句话不见得适用于所有场合,但对于不少从事Java Web开发的人来说,赞同者恐怕不在少数。由于具备Rails风格的框架、兼容绝大多数Java语法的Groovy动态语言、以业界口碑良好的框架为基础、对企业现有Java开发资产的保护、Plugin架构等特点,再加上Spring社区的强力介入,Grails行情看涨应该是意料之中的。

然而Grails却没有看上去那么简单,在其包装的糖衣之下,有着许多作为Java Web开发者不得不了解的知识。最近,Peter Delahunty发表了题为Grails开发者需要知道的10个技巧的博文。不要被标题所迷惑了,这里所说的“技巧”可不是那些语言层面的“技巧”,把它们称为“建议”恐怕更合适一些。

技巧1:把Grails的书籍买来读读。对此,Peter Delahunty推荐了已出版的《Definitive Guide to Grails 2nd edition》和《Groovy and Grails Recipes》,以及即将出版的《Grails in Action》。

技巧2:学习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

在这个建议中,他列举了一些资源:

以及一些书籍:

  • Programming Groovy
  • Groovy Recipies
  • Groovy in action

技巧3:了解Grails的各个插件。Peter Delahunty给出的理由:Grails本身是个插件系统,而且现在已经有大量的插件可供下载。在自行实现之前,不妨看看其中是否有称手的。

技巧4:学习Hibernate和Spring。这一点不难理解,既然Grails是建立在这些工具之上的,了解这些工具本身的使用,对于熟练使用Grails自然大有脾益。

技巧5:使单元测试、集成测试和一般测试的自动化。Peter Delahunty在这里推荐了两个Grails的插件:Testing PluginFunctional testing plugin。前者将成为Grails 1.1的内置插件。

技巧6:使用好的IDE。Peter Delahunty表示,他自己使用的是Intellij,但对于Netbeans也寄予厚望。

技巧7:学习并使用HTML W3C标准。“遵循标准将消除你90%的问题”,Peter Delahunty如是说。

技巧8:看上去不错一定不错。这其实说的是“面子工程”,通过提高应用的外观设计来提高应用的竞争力。Peter Delahunty给出了2个资源:

技巧9:使用Firefox上的Firebug。对于浏览器端的调试工作,Firebug绝对是一个必备工具。

技巧10:跟上Groovy和Grails社区的步伐。在这最后一个建议中,Peter Delahunty给出了获取Groovy和Grails信息的主要资源链接:

请务必阅读Peter Delahunty的原文。对于Grails的新老使用者,你都可以从Peter Delahunty的建议中有所收获。关于InfoQ中文站Groovy和Grails的其它内容,请访问这里这里

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

Good! by 许 辉辉

很有用的建议!
Thanks! ;-)

很好 by qiu james

对于grails用户来说, 对groovy的了解绝对重要; 还有, 看书和官方手册能够学习得比较系统.

英文原文连接打不开 by wang xin

What about you guys?

Re: 英文原文连接打不开 by 胡 键

找个代理吧,可以打开的。

Re: 英文原文连接打不开 by Jacky Li

没听说过gfw么……

Re: 英文原文连接打不开 by Jacky Li

没听过gfw么

中文的书籍还是少啊 by Aiime Quqibing

Grails权威指南的版本已经很旧了.
Groovy的书籍资料也很少, 官方的中文文档汉化进度比较慢, Ibm的系列介绍不是很系统, 所以现在最好的资料是英文版的in Action
希望早日多出中文版的书籍.

其实说的就是grails开发人员的conversion啊 by Xie Fengbo

好像我都遵守了。只是没时间看那么多的书。要不是之前有hibernate和spring的基础,估计grails的学习过程也挺长

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

8 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT