写点什么

文章: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:33917
用户头像

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

关注

评论

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

每次新增页面复制粘贴?100多行源码的 element-ui 新增组件功能告诉你减少重复工作

若川

JavaScript Vue 前端 Element Element UI

Java Core「18」JCF 及常见问题

Samson

学习笔记 Java core 6月月更

50行代码串行Promise,koa洋葱模型原来是这么实现?

若川

JavaScript 前端 Node Jest koa2

攻防演练中蓝队针对攻击方式复盘总结

穿过生命散发芬芳

6月月更 攻防演练

Flutter SliverAppBar全解析,你要的效果都在这了!

yechaoa

flutter android 6月月更 SliverAppBar

怎样能低成本构建一个电商平台

Geek_99967b

小程序 电商

SpringBoot-入门

zarmnosaj

6月月更

Java中数组参考指南

okokabcd

Java’

Docker 化 Vue2 应用开发

devpoint

Docker Docker 镜像 6月月更

新手向:前端程序员必学基本技能——调试JS代码

若川

JavaScript 前端 前端开发 调试 Node

自定义MySQL连接池

FunTester

从22行有趣的源码库中,我学到了 callback promisify 化的 Node.js 源码实现

若川

JavaScript node.js 前端 前端开发 Node

【使用Python实现算法】01 语言特性

★忆先★

Python 算法 算法题

初学者也能看懂的 Vue2 源码中那些实用的基础工具函数

若川

JavaScript Vue 前端 前端开发

深入理解 Jetpack Compose SlotTable 系统

fundroid

android Compose android jetpack SlotTable gap buffer

云原生运维文章计划

boaker

运维 云原生

去哪儿网(Qunar) DevOps 实践分享

laofo

DevOps cicd 研发效能 持续交付 工程效率

linux检测系统是否被入侵(上)

入门小站

Linux

flutter系列之:flutter中的变形金刚Transform

程序那些事

flutter 程序那些事 6月月更

剑指 Offer 65. 不用加减乘除做加法

未见花闻

6月月更

为什么 Vue2 this 能够直接获取到 data 和 methods,源码揭秘

若川

JavaScript Vue 前端 前端开发 源码解析

每次启动项目的服务,电脑竟然乖乖的帮我打开了浏览器,100行源码揭秘!

若川

JavaScript 前端 前端开发 Node

K8S学习笔记--《容器化的应用:会了这些你就是Docker高手》

IT蜗壳-Tango

IT蜗壳教学 6月月更

不得利用算法从事垄断行为:防范利用算法和大数据进行杀熟

石头IT视角

云厂商为什么都在冲这个KPI?

脑极体

面对 this 指向丢失,尤雨溪在 Vuex 源码中是怎么处理的

若川

JavaScript Vue 前端 前端开发 vuex

信通院举办“业务与应用安全发展论坛” 天翼云安全能力再获认可

极客天地

在线JSON转PlainText工具

入门小站

工具

企业架构师面试的100个问题

涛哥 数字产品和业务架构

企业架构师

【使用Python实现算法】02 原生类型与内置函数

★忆先★

Python 算法题

从小到大为何一谈学习就愁眉苦脸

宇宙之一粟

学习 6月月更

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