写点什么

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:563690
用户头像

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

关注

评论

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

软件研发效能管理工具有哪些?8大效能管理工具盘点

爱吃小舅的鱼

企业管理 管理软件 效能管理

从实测出发,掌握 NebulaGraph Exchange 性能最大化的秘密

NebulaGraph

数据导入

开发小白的高光逆袭:竟然能一眼断定生产环境接口响应时间慢是磁盘性能问题引起的

KINDLING

Java 故障定位 ebpf 生产环境 排障

StarRocks斩获「2022 掘金引力榜」年度技术品牌传播案例 Top 10!

StarRocks

数据库

2023 年推荐这 10 个开发者工具

Liam

前端 后端 开发者工具 开发工具 程序员 java

5大移动应用开发平台推荐

FN0

移动开发 移动开发平台 移动应用开发 移动端开发

1月书单 & 2月新书预告 | 百万册畅销书全新续作来啦!

图灵社区

书单推荐 新书

自动驾驶工具链及仿真平台的应用

Baidu AICLOUD

自动驾驶 工具链

随机高并发查询结果一致性设计实践

京东科技开发者

架构设计 并发 业务场景 企业号 2 月 PK 榜 京东物流

软件测试/测试开发 | app自动化测试(Android)--显式等待机制

测试人

软件测试 自动化测试 测试开发 appium app自动化测试

佛萨奇系统开发源码部署技术方案(MetaForce元宇宙)

I8O28578624

佛萨奇系统开发流程原理,2.0版?佛萨奇源码部署搭建方案程序解析

I8O28578624

天穹-gateway网关系列1:Tesla网关整体介绍

哈哈哈

开源 云原生 后端 网关 #java

过年回去,终于给老人讲清楚两台电脑是如何通信的

华为云开发者联盟

后端 开发 华为云 企业号 2 月 PK 榜 华为云开发者联盟

MetaForce佛萨奇系统开发技术流程(成熟代码)佛萨奇2.0源码部署教程

I8O28578624

软件质量因素的定义

JefferLiu

百度智能云助力自动驾驶全链路研发

Baidu AICLOUD

自动驾驶 全链路

1 理解功能、业务功能和能力

涛哥 数字产品和业务架构

企业架构 业务架构 业务架构师

北京大数据培训中心怎么样

小谷哥

智能合约MetaForce佛萨奇系统开发详细(技术解析)

I8O28578624

图解华为云代码检查服务CodeArts Check

华为云PaaS服务小智

1月书单 & 2月新书预告 | 百万册畅销书全新续作来啦!

图灵教育

书单推荐 科技书单 新书

国资委79号文解读:国央企OA办公系统信创替代落地实践与标杆案例

数字科技时讯

信创 电子合同 电子签名 企业国产化 OA

打造合规数据闭环,加速自动驾驶技术研发

Baidu AICLOUD

自动驾驶 数据闭环

零基础前端培训学习有用吗

小谷哥

前端培训学完课程后如何找工作?

小谷哥

天穹:一站式BizDevOps平台介绍

哈哈哈

云原生 后端 链路追踪 压测 网关

一文揭晓,我是如何在Linux中查找自如

C++后台开发

Linux 后端开发 linux开发 Linux服务器开发 C++开发

跨境电商“重新出发”,区块链赋能新玩法

旺链科技

区块链 区块链技术 区块链技术应用

java就业培训班怎么选?

小谷哥

科班和培训出来的前端程序员的区别

小谷哥

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