写点什么

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

  • 2009-02-27
  • 本文字数:1522 字

    阅读完需:约 5 分钟

如果要列举近些年来 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();<br></br>for (Iterator iterator = people.iterator(); iterator.hasNext();) {<br></br>Person person = (Person) iterator.next();<br></br>names.add(person.getName());<br></br>}<br></br>System.out.println(names);<br></br> 用 Groovy,我会这么写:def names = people*.name<br></br>println names<br></br> 呵呵,简单吧。我还可以这样写:def names = people.collect {it.name}<br></br>println names<br></br>

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

以及一些书籍:

  • Programming Groovy
  • Groovy Recipies
  • Groovy in action

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

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

技巧 5:使单元测试、集成测试和一般测试的自动化。Peter Delahunty 在这里推荐了两个 Grails 的插件: Testing Plugin Functional 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 的其它内容,请访问这里这里

2009-02-27 03:563588
用户头像

发布了 255 篇内容, 共 56.8 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

一文讲透研发,SRE,运维,DevOps 的区别

Bytebase

DevOps SRE dba database

政企组织为什么更需要私有化的IM即时通讯平台?

WorkPlus

科创板的一束“海光”,正在让中国半导体发展之路更清晰

脑极体

Gartner:云安全面临的三大挑战以及三个对应策略

WorkPlus

当云走向行业垂直化,企业该如何应对?

WorkPlus

【LeetCode】设计有序流Java题解

Albert

LeetCode 8月月更

合并两个有序单链表,对象析构这一着我实在没想到。

清风莫追

8月月更

EMQX企业版正式上架华为云OSC,助力企业实现云原生MQTT Broker的全生命周期管理

EMQ映云科技

物联网 华为云 mqtt emqx 8月月更

Tapdata 与麒麟软件完成兼容性互认证,国产化生态布局再跃步

tapdata

Tapdata Tapdata架构

15条建议,把技术成果写成一篇高质量学术论文

阿里技术

经验分享

自研发RTC退退退!接入第三方RTC才是真的香

擎声科技

RTC 实时音视频 社交APP出海 泛娱乐出海 擎声Qtt

重新定义容器化 Serverless 应用的数据访问

阿里巴巴中间件

云计算 阿里云 Serverless 容器 云原生

Jedis 客户端

武师叔

8月月更

融云 | 企业通讯录的设计与实现

融云 RongCloud

通信 企业

音视频大佬离职后,我是如何在短时间内在音视频开发做出一个性价比高的最优方案

擎声科技

开发者 RTC sdk 实时音视频 擎声Qtt

Seata-php 入门与下半年展望

apache/dubbo-go

如何维护您的知识库?

Geek_da0866

LeaRun.Java微服务快速开发平台

力软低代码开发平台

iofod - 为攻城师们打造的低代码平台

iofod jude

低代码 实用工具

兼容认证|天融信太行云与观测云完成产品兼容性互认证

观测云

如何开发一款基于 Vite+Vue3 的在线表格系统(上)

葡萄城技术团队

Vue 前端 vite 框架 系统开发

<T>和<?>区别

六月的雨在InfoQ

开源 T 8月月更

灵感宝盒图谱全新改版!代码实验室开启报名丨RTE NG-Lab 双周报

声网

人工智能 RTE NG-Lab

个推漫话数据智能 | 《天才基本法》中的贝叶斯网络及原理解读

个推

人工智能 机器学习 深度学习 算法模型

大数据培训中心哪家比较靠谱

小谷哥

头脑风暴:完全平方数

HelloWorld杰少

算法 LeetCode 数据结构, 8月月更

故障复盘后的告警如何加出效果?浙江移动等老司机总结了6条注意事项

TakinTalks稳定性社区

开源一夏 | 使用 CSS 的仿 GitHub 登录页面

海拥(haiyong.site)

开源 8月月更

攻克美颜、虚拟背景、眼神接触多个难题,腾讯会议技术领先的秘诀找到了

科技热闻

排查 log4j2 安全漏洞的一次经历

观测云

Apache Doris 助力网易严选打造精细化运营 DMP 标签系统

SelectDB

数据分析 OLAP Doris 多维分析 DMP

Grails开发者需要知道的10个技巧_Java_胡键_InfoQ精选文章