写点什么

文章:Groovy 1.5 的新特性

  • 2008-01-16
  • 本文字数:874 字

    阅读完需:约 3 分钟

Groovy 就是 Java,而且 Groovy 使得 Java 更 groovy 了。与其他语言相比,Groovy 对于 Java 开发者无疑提供了最平滑的学习曲线,这得益于两者非常相似的语法。Groovy 产生的是正常的 Java 字节码而且使用普通的 JDK 库,所以你不需要学习全部的新的 API,而且不需要复杂的集成机制:极其方便,Groovy 和 Java 是可以相互交换的。附加的好处是你可以保护对你的 Java 开发人员 Java 技巧方面的投资,或者是昂贵的应用服务器,或者第三方的或者公司自己开发的库,你可以在 Groovy 中毫无问题地重用他们。

在本文中,作者对 Groovy 1.5 的新特性做了详细介绍。Groovy 1.5 支持 Java 5 的注解,范型和枚举,这使得 Groovy 可以与Spring,Hibernate,JPA,Goole Guice 或者 TestNG 这样的框架集成工作。此外,Groovy 1.5 中还支持可变的参数,静态导入,共变的返回类型,Elvis 操作符,经典的 for 循环,没有圆括号的命名参数等很酷的功能,有很多花哨的用法。由于改进的语法以及增强的动态能力,Groovy 让你能够创建内嵌的领域特殊语言来定制你的商业逻辑,并在应用的扩展点方便地集成进来。

当 Groovy 还不成熟的时候,一个常见的弱点是缺乏好的工具支持:工具系列和 IDE 支持都不到位。幸运的是,随着 Groovy 和 Grails web 框架的成熟和成功,这种状况得到了改变。本文对目前 Groovy 的工具和 IDE 支持做了介绍。现在 Groovy 有了“联合”编译器,Groovy 的 Maven 插件,GroovyDoc 文档工具,新的交互性 shell 和 Swing 控制台这些强大的工具以及 IntelliJ IDEA JetGroovy 插件这样完美的 IDE,这个插件是由 JetBrains 他们自己开发的,对于语言和 Web 框架都提供了无以伦比的支持。

Groovy 1.5 显著地提高了性能,并且降低了内存消耗。由于 Groovy 和 Grails 项目的共生关系,Grails 核心部分中成熟的动态能力已经被引入到 Groovy 中。关于 UI 的开发,本文作者介绍了一个在 Groovy 中用 Swing 来构建用户界面项目。

由于工具支持的大幅改善,开发者的体验有了显著的提高。作者建议所有喜欢动态语言的 Java 开发者们,让 Groovy 成为自己工具箱的一部分。更多精彩内容,请阅读全文。

2008-01-16 04:331155
用户头像

发布了 47 篇内容, 共 12.7 次阅读, 收获喜欢 3 次。

关注

评论

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

[数据分析实践]-文本分析-U.S. Patent Phrase-1

浩波的笔记

数据分析

读《Software Systems Architecture》(18)—— The Information Viewpoint

术子米德

架构师成长笔记

读《Software Systems Architecture》(26)—— The Performance and Scalability Perspective

术子米德

架构师成长笔记

JVM调优简要思想及简单案例-JVM是什么?

zarmnosaj

6月月更

字符串

Jason199

js 字符串 6月月更

gogs使用webhook部署react单页应用

Nick

ci 持续集成 React 6月月更 gogs

flutter系列之:Material中的3D组件Card

程序那些事

flutter 程序那些事 6月月更

python停车时间计算,时分秒计算(split()函数)

写代码两年半

Python 6月月更

读《Software Systems Architecture》(28)—— The Evolution Perspective

术子米德

架构师成长笔记

【协程】LifecycleScope源码解析

yechaoa

android 协程 6月月更 LifecycleScope

读《Software Systems Architecture》(22)—— The Operational Viewpoint

术子米德

架构师成长笔记

读《Software Systems Architecture》(23)—— Archiving Consistency Across Views

术子米德

架构师成长笔记

Java中检查字符串是否是有效日期

okokabcd

Java

中台的细节

卢卡多多

中台 6月月更

远程办公-如何提高开会效率?| 社区征文

石云升

远程办公 开会 会议 6月月更 初夏征文

【愚公系列】2022年06月 通用职责分配原则(三)-低耦合原则

愚公搬代码

6月月更

读《Software Systems Architecture》(21)—— The Deployment Viewpoint

术子米德

架构师成长笔记

读《Software Systems Architecture》(25)—— The Security Perspective

术子米德

架构师成长笔记

读《Software Systems Architecture》(19)—— The Concurrency Viewpoint

术子米德

架构师成长笔记

读《Software Systems Architecture》(20)—— The Development Viewpoint

术子米德

架构师成长笔记

CentOS环境基于nginx搭建负载均衡

乌龟哥哥

6月月更

读《Software Systems Architecture》(17)—— The Functional Viewpoint

术子米德

架构师成长笔记

读《Software Systems Architecture》(27)—— The Availability and Resilience Perspective

术子米德

架构师成长笔记

力扣每日一练之二维数组上篇Day4

京与旧铺

6月月更

莫把功能当能力!从企业架构视角看警察在火锅店站岗

涛哥 数字产品和业务架构

企业架构

c语言选择,循环语句概述

工程师日月

6月月更

Java Core 「8」字节码增强技术

Samson

学习笔记 Java core 6月月更

InfoQ 极客传媒 15 周年庆征文|漫谈公网网络延迟

耳东@Erdong

运维 6月月更 InfoQ极客传媒15周年庆 网络延迟

InfoQ 极客传媒 15 周年庆征文| 手把手带你入门 API 开发

宇宙之一粟

flask-restful 6月月更 InfoQ极客传媒15周年庆 API开发

在线JSON转TSV工具

入门小站

工具

读《Software Systems Architecture》(24)—— Introduction to the Perspective Catalog

术子米德

架构师成长笔记

文章:Groovy 1.5的新特性_Java_Guillaume LaForge_InfoQ精选文章