写点什么

用 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:30849

评论

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

Youtrack Linux 安装

HoneyMoose

小程序技术在信创操作系统里的应用趋势

没有用户名丶

SoundSource for mac(音量控制工具)

展初云

Mac软件 音量调节

校源行 | 开放原子开源社团(西北工业大学)授牌仪式成功举行

开放原子开源基金会

以烟草行业为例,聊聊如何基于 PLC + OPC + TDengine,快速搭建工业生产监测系统

TDengine

tdengine 时序数据库

原料所属权管理领先实践,助力造币厂来料加工原料管理降本增效

用友BIP

领先实践 原料所属权管理

九章云极DataCanvas多模态大模型平台实践与思考

九章云极DataCanvas

Linux之进程掩码umask详解。

百度搜索:蓝易云

云计算 Linux 运维 云服务器 umask

商用显示设备包括哪些?

Dylan

企业 设备 显示器 LED显示屏

百度世界大会2023重磅发布进行时,小度全新智能音箱重构家居美学新乐章

新消费日报

使用 ChaosBlade 验证 DLRover 的弹性和容错的稳定性

AI Infra

人工智能 开源 开发者 云原生 大模型

英语学习工具:Eudic欧路词典 for Mac增强版

展初云

Mac 欧路词典 英语学习工具

用友 Fast by BIP引领专业技术服务企业快速迈向数智化创新

用友BIP

Fast by BIP

使用流量管理工具保护 Kubernetes 的六种方法

NGINX开源社区

Kubernetes DOS攻击 Web应用防火墙 原生云

LAS Spark+云原生:数据分析全新解决方案

字节跳动数据平台

数据库 大数据 数据中台 数据研发 企业号10月PK榜

PaddleX解决分类、检测两大场景问题?实战精讲教程来了!

飞桨PaddlePaddle

AI 飞桨 套件

代码的艺术 - Writing Code Like a Pianist | 京东云技术团队

京东科技开发者

代码质量 整洁代码 企业号10月PK榜 系统质量

Sentinel源码改造,实现Nacos双向通信!

王磊

Java

如何从构建到运营?数科公司数智创新研讨会成功举办

用友BIP

数科公司

推动产业升级及创新,Doris Summit Asia 2023 先进智造与电信论坛提前揭秘

SelectDB

数据库 大数据 数据仓库 实时数仓 apache doris

List.of() Vs Arrays.asList()

越长大越悲伤

Java

玩转MaxCompute SQL训练营! 数据分析挖掘迅速出师

阿里云大数据AI技术

大数据 数据分析

全面解析内存泄漏检测与修复技术

华为云开发者联盟

程序员 开发 内存 华为云 华为云开发者联盟

新晋技术管理者如何推动组织变革?

LigaAI

团队管理 研发管理 进阶 技术管理 企业号10月PK榜

我与极客时间的故事

穿过生命散发芬芳

我和极客时间的故事

DevOps2023现状报告|注重文化、以用户为中心是成功的关键

SEAL安全

人工智能 DevOps DORA 企业号10月PK榜 技术报告

小巧高效的音频录制 Piezo 最新激活版

胖墩儿不胖y

Mac软件 音频处理器 音频录制

李彦宏:我们即将进入一个AI原生的时代|百度世界2023

飞桨PaddlePaddle

百度 大模型 文心一言

iPhone手机维护推荐 PhoneRescue for iOS 最新中文激活

mac大玩家j

Mac软件 手机助手

QSpace Pro for Mac(多窗文件管理器)

展初云

文件管理 Mac软件

图文结合丨Prometheus+Grafana+GreatSQL性能监控系统搭建指南(下)

GreatSQL

greatsql

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