写点什么

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

评论

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

cannot load "mso.dll" vs2008 web开发问题

GoodTime

web开发 VS2008

区块链背后的秘密:从交易看故事

Footprint Analytics

区块链

独立站新手教程引流篇:YouTube SEO优化指南!

九凌网络

Eudic欧路词典 for mac(英语学习工具) v4.5.6完美激活版

mac

苹果mac Windows软件 英语学习软件 欧路词典 Eudic

AIBP,我的下一个职业规划

法老猫

AIGC LLMs AIBP

购买体育赛事直播系统源码:如何找到靠谱一手源码,避免二道贩子源码

软件开发-梦幻运营部

荣耀Magic6系列旗舰新品及MagicOS 8.0发布会

荣耀开发者服务平台

安全 UX 交互 人机协作 loT

怎么在GridView中限制显示字数

GoodTime

C# asp.net GridView

软件测试/测试开发|IntelliJ IDEA安装与配置教程

霍格沃兹测试开发学社

软件测试/测试开发|edge浏览器首页及新标签页设置

霍格沃兹测试开发学社

每日一题:LeetCode-152. 乘积最大子数组

Geek_4z9ami

面试 算法 LeetCode 动态规划 滚动数组

【直播预告】刘军博士:科学研究中的AI计算:何助力团队协作创新

九章云极DataCanvas

干货满满!学习有限元分析软件Abaqus的几个必备理论

思茂信息

abaqus abaqus软件 abaqus有限元仿真 有限元分析

妨碍做出正确决策的5种认知谬误

俞凡

思维模型 认知

妨碍有效沟通的5种认知谬误

俞凡

沟通 思维模型 认知

字节跳动 MapReduce - Spark 平滑迁移实践

字节跳动云原生计算

大数据 spark 云原生

TiDB 入选 2023 年中国云原生数据库十大厂商推荐

PingCAP

数据库 云原生 TiDB 金融业

软件测试/测试开发丨Python面向对象 学习笔记

测试人

Python 软件测试 测试开发

码住!8个小众宝藏的开发者学习类网站

伤感汤姆布利柏

学习 效率 低代码 低代码开发工具

什么是意向锁?它和意向书有什么区别?

王磊

Java 面试

外贸网站显示不安全警告怎么办?消除网站不安全警告超全指南

九凌网络

平凯数据库亮相 2023 信息技术应用创新论坛

PingCAP

数据库 信息化 TiDB

天猫店铺所有商品数据接口(Tmall.item_search_shop)

tbapi

天猫API接口 天猫商品数据接口 天猫店铺所有商品数据接口 天猫店铺商品接口

【论文解读】模型即服务-介绍MaaS中所涉及的关键技术

合合技术团队

人工智能 大数据 合合信息 论文解读

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