大模型“四虎”出山,亮相 4 月 QCon 北京。 了解详情
写点什么

用 Groovy 能玩出来的漂亮把戏

  • 2007-06-30
  • 本文字数:1005 字

    阅读完需:约 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-06-30 19:30971

评论

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

北美亚特兰大一金融服务公司面试总结

HoneyMoose

技术探索系列 - 轻松带你掌握 JMM(1)

洛神灬殇

Java JVM JMM 并发 5月日更

又一个免费良心的下载站,答应我:别再下到流氓软件了。

彭宏豪95

ios 效率 工具 下载 4月日更

本文标题不能描述本文内容

小天同学

读书 哲学 读后感 4月日更

fastadmin+xunsearch题库系统搭建教程

一颗小树

php thinkphp fastadmin xunsearch 题库系统

鹅厂疯子整理了万字Java笔记!小白:硬核资源基础知识已入门

牛哄哄的java大师

Java Object

InfoQ & 声网Agora 技术开放日邀请函

Jessie

音视频 声网

【LeetCode】员工的重要性Java题解

Albert

算法 LeetCode 5月日更

如何在 GitHub 上面为你的项目选择开源许可证

HoneyMoose

从零搭建一款PC页面编辑器PC-Dooring

徐小夕

大前端 可视化 lowcode 代码编辑器

高校软件IT专业大学生课外培训调查问卷

穿过生命散发芬芳

行业分析能力考核

聆听极致 ——声网 Agora

cv君

算法 音视频 科技 声网 引航计划

Excel用户如何学习数据分析语言DAX?

博文视点Broadview

对于即将工作的IT大学生,该如何变强?

cv君

程序人生 IT 科技 问卷 有意义

手机屏幕投屏到桌面的离线方案

黄敏

了解代理服务器

进击的梦清

nginx Linux 运维 代理原理

A “word-wrap” functionality(一个字符串包裹函数)

HoneyMoose

面试:某云面试题目整理

程序员架构进阶

Java 面试 自我提升 28天写作 4月日更

IT 专业大学生被培训机构“渗透”情况调查

梦想橡皮擦

签约计划

BPF 之巅:洞悉 Linux 系统和应用性能

博文视点Broadview

你的烂代码终于有了解决方案

博文视点Broadview

当代软件IT大学生的技术学习之路

Nydia

签约计划

网络攻防学习笔记Day1

穿过生命散发芬芳

5月日更 网络攻防

将本地文件/文章上传到 GitHub 的流程

彭宏豪95

git GitHub 效率 编程

书单 | 月度畅销好书,助你技能满格,摆脱低效,走向财富人生

博文视点Broadview

如何选择开源许可证

HoneyMoose

复杂Gremlin查询的调试方法

Tom(⊙o⊙)

gremlin调试

SpringCloud-技术专题-Feign组件基本使用(2)

洛神灬殇

springmvc SpringCloud Hystrix Fegin

2021年十大突破性技术

石云升

读书笔记 5月日更

万字长文讲述我是怎样保送清华的|寒门学子的奋斗史(四)

程序猿石头

程序员 码农 逆袭 大学总结 读书总结

外行在谈论流派,大师在讨论颜料

顿晓

极限编程 5月日更 门道

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