写点什么

用 Groovy 能玩出来的漂亮把戏

  • 2007-05-31
  • 本文字数:1001 字

    阅读完需:约 3 分钟

随着动态语言开始在 JDK 6 中扮演重要角色,Groovy 专家 Guillaume Laforge、Dierk Konig 和 Guillaume Alleon 在“用 Groovy 能玩出来的漂亮把戏(Cool things you can do with Groovy)”研讨会向开发人员展示了 Groovy 语言的特性,从而帮助开发人员提高生产力。

演讲的一开始介绍了 Groovy 的标准特性(增强的语言特性、闭包 [Closures]、正则表达式支持、GString 和集合等等),随后还讨论了一些对提高生产力更有帮助的语言特性,其中最为引人注意的包括:

Groovy Builders 和 GPath:你不再需要通过翻译砸的 XPath API 来访问数据了。使用 GPath 操作 XML 文档就像直接操作对象一样,允许你通过调用属性来访问数据;而使用 Builder,你可以反过来使用对象和大括号来创建 XML 文件。除了 XML Builder 以外,还有 Swing 和 Ant 的 Builder。

对 Annotation 的支持:在今年稍后发布 1.1 版本之后,Groovy 将成为唯一支持 Annotation 的动态语言。由于它将允许双向的数据访问,因此这是一个重要的里程碑。一个使用了 Google Juice 和 TestNG 的演示展示了使用注入的 Mock 数据的测试用例开发起来是多么轻而易举的一件事情。

Live Objects:Groovy 外壳(Shell)的特性不仅是一个考察这门语言最简单的途径,而且可以用来交互地探索 Java 的运行期环境。当运行期配置被嵌入到一个应用程序中时,开发人员可以对这些配置进行探索,并且对其进行实时修改,这使得开发人员在永久性修改代码之前,就可以检验所做的假设并且对理论进行测试。

动态的应用程序:在你的应用程序中可以选择这样一种方式:将 Groovy 代码编译成 Java 的 class 文件,然后在应用中使用这些静态类。此外,开发人员还有其它选择。最有说服力的就是使用 GroovyClassloader,这种方式使得 Groovy 脚本在运行期被请求时才被编译,这就允许在运行时期更改和使用源文件,而不必重启整个应用程序。

Charles Ditzel 在经过演讲人允许之后,发布 PPT 供大家下载

查看英文原文: Cool things you can do with Groovy - - - - - -

译者简介:吴磊,有多年软件开发经验,从 1999 年开始使用 C++,2002 年转入 Java 领域,具备 J2ME 和 J2EE 方面的开发经验。在多个项目开发过程中先后使用过 WebWork、Spring、Hibernate 等开源项目。目前正在进行基于 Spring 轻量级 J2EE 开发,对敏捷方法有一些尝试。另外对 Erlang 很有兴趣,正在学习中。为 InfoQ 中文站贡献内容,请邮件至 china-editorial@infoq.com

2007-05-31 08:30977

评论

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

【HarmonyOS 5】鸿蒙CodeGenie AI辅助编程工具详解

GeorgeGcs

HarmonyOS

【HarmonyOS 5】鸿蒙应用px,vp,fp概念详解

GeorgeGcs

HarmonyOS NEXT

AI手机出货量逐年上扬,火山引擎助力国内厂商 “弯道超车”

新消费日报

Java中高级核心知识全面解析(面试题及答案大全)!

程序员高级码农

程序员 Java 面试题

ArkUI-X应用工程结构说明

龙儿筝

天润融通AI助理重大更新!三大功能让新人客服成长周期缩短一半!

天润融通

FL Studio 24.2重要更新内容,FL Studio 24中文破解版下载,FL Studio免费序列号激活码分享

阿拉灯神丁

编曲软件 水果FL Studio FL Studio2024 音乐制作软件 音频软件

Golang基础笔记二之字符串及其操作

Hunter熊

golang 字符串 字符串处理

天润融通Agent已经成了最会卖货的员工

天润融通

《HarmonyOSNext性能暴击指南:3大避坑术+4维钻石法则,告别卡顿从入门到封神!》

Turing_010

【 HarmonyOS 5 入门系列 】鸿蒙HarmonyOS示例项目讲解

GeorgeGcs

HarmonyOS NEXT

时序数据库 TDengine x Kepware:解决你最头疼的“设备接入”问题

TDengine

数据库 tdengine 时序数据库

ArkUI-X平台桥接Bridge说明

龙儿筝

VKProxy新增速率限制功能

八苦-瞿昙

火山引擎×国产智能终端:「端云协同」共创AI落地“中国方案”

新消费日报

如果要造硬件,最好在深圳,如果要在一场黑客松上造硬件,最好在……

声网

【HarmonyOS 5】鸿蒙中Stage模型与FA模型详解

GeorgeGcs

HarmonyOS

时序数据库 TDengine 助力华锐 D5 平台实现“三连降”:查询快了,机器少了,成本也低了

TDengine

数据库 tdengine 时序数据库

HDC 2025直播盛宴来袭,鸿蒙生态精彩内容不容错过!

最新动态

Sam Altman :无处不在的 AI 伴侣是理想产品形态;MiniMax Agent:一键直出图文音并茂作品丨日报

声网

甩开卡顿!HarmonyOS丢帧问题超详细拆解手册

Turing_010

大模型 RAG 进阶实战营 毕业总结

gigifrog

spss是什么软件,SPSS主要用来做什么的 ? SPSS数据分析软件介绍 spss个人版和企业版区别

阿拉灯神丁

mac数据分析统计软件 spss数据统计 IBM SPSS Statistics中文 spss统计软件

项目管理利器:甘特图的全面解析与应用指南

敏捷开发

甘特图 #项目管理

利用 Amazon Bedrock 构建高效 SEO 内容生成系统:从流量挖掘到智能创作

亚马逊云科技 (Amazon Web Services)

时序数据库 TDengine 通过麒麟全系列兼容性认证,稳了!

TDengine

数据库 tdengine 时序数据库

掌握AI,驾驭未来!天润融通AI训练师精英计划报名火热进行中

天润融通

火山引擎重塑智能终端行业,推动国产AI普惠

新消费日报

鸿蒙运动项目开发:封装超级好用的 RCP 网络库(下)—— 实战应用

王二蛋和他的张大花

底层架构剖析:国内 iPaaS 开发效率与稳定性双优,国外 ESB 为何落后?

RestCloud

ESB 底层架构 集成平台 ipaas

Windows下版本控制器(SVN)- 配置版本库

刘大猫

人工智能 svn 大模型 tortoiseSVN 版本控制器

用Groovy能玩出来的漂亮把戏_Java_Ian Roughley_InfoQ精选文章