Blog信息 |
blog名称: 日志总数:1304 评论数量:2242 留言数量:5 访问次数:7577954 建立时间:2006年5月29日 |

| |
[Groovy]Groovy 1 语法特性 软件技术
lhwork 发表于 2006/12/15 15:44:15 |
Groovy <1> 语言特性
前言
Groovy 是基于 JRE 的脚本语言( Script ),是由James Strachan 和 Bob McWhirter 这两位天才发明的,(JSR 241 2004 年 3 月)。和Perl,Python等等Script的设计初衷一样,作者希望Groovy能快速简洁地完成一些工作:如访问数据库以编写报告,编写单元测试用例(Unit Test Case),快速实现产品原型(ProtoType) 等等。同时为了降低学习曲线,Groovy 的语法和Java 近似,并吸收了 Ruby,Python 和SmallTalk 的一些特点,因此 Groovy 在某些场合可以扮演一种 “咖啡伴侣”的角色。那么Groovy 和 Java 相 |
|
[Groovy]Groovy 2 基础语法 软件技术
lhwork 发表于 2006/12/15 15:43:43 |
Groovy的基础语法
Groovy 有很多优点。它很好地融合了 Ruby、Python 和 Smalltalk
的一些最有用的功能,同时保留了基于 Java 语言的核心语法。对于Java 开发人员,Groovy
提供了更简单的替代语言,且几乎不需要学习时间。对于刚接触 Java 平台的开发人员,它可以作为有更复杂语法和要求的 Java
语言的一个容易的入口点。
语法
Groovy的语句和Java类似,但是有一些特殊的地方。例如语句的分号是可选的。如果每行一个语句,就可以省略分号;如果一行上有多个语句,则需要用分号来分隔。x = [1, 2, 3] println x y = 5; x = y + 7 println x assert x == 12
|
阅读全文(4255) | 回复(0) | 编辑 | 精华 | 删除 |
| |
[Groovy]Groovy 3 类和闭包 软件技术
lhwork 发表于 2006/12/15 15:43:14 |
灵活性是更有效地开发代码的主要因素。Groovy语言是建立在总有一天 Java 平台要包括一种敏捷开发语言这一信念上的 (Richard Monson-Haefel),因此Groovy的语法是始终围绕灵活性这个特性进行设计的。
因为 Groovy 除了是种面向过程和面向对象的语言外,它还包含了实现函数式编程一些东西。
函数编程
我们知道例如Lisp、Scheme、Haskell、ML (或其他一些语言)采用了函数式编程。但“到底什么是函数式编程 (FP)?”不幸的是,即使是函数程序员他们自己也很难对 FP 究竟是什么有个一致的认识。David Mertz 认为函数式编程粗略地描绘为至少具有以下几个特征:
函数是第一类(对象)。即,可以对“数据”进行的每样操作都可以使用函数本身做到(例如将一个函数传递给另一个函数)。将递归用作主要的控制结构。在某些语言中,不存在其它 |
|
[Groovy]Groovy 4 集合 软件技术
lhwork 发表于 2006/12/15 15:42:44 |
将对象组织到像列表和映射这样的数据结构中是一项基本的编码任务。像大多数语言一样,Groovy 定义了一个丰富的库以管理这些类型的集合。
列表
创建一个列表与在 Java 语言中创建一个数组很类似。collect = ['groovy', 29, 'Hello', 'Groovy']empty=[] assert empty.size() == 0 //添加元素 empty.add 1 assert empty.size() == 2在上面的例子里,列表 collect 的第二项自动装箱为一个 Integer 类型。此外“[]”表示一个空列表,这个例子还演示了如何向列表中添加元素。Groovy 还为集合增加了几个新方法, |
|
[Groovy]Groovy 5 JDBC编程 软件技术
lhwork 发表于 2006/12/15 15:42:15 |
与Groovy的脚本特性相适应,Groovy JDBC 包含了一个精巧简单的GroovySql
API,由于使用闭包和迭代器,GroovySql 把 JDBC 的资源管理职责从开发人员转移到 Groovy 框架内,从而消除了 JDBC
编程的繁琐,使得变成人员可以把注意力放在处理查询结果上。 GroovySql 简介
在 Java 中,我们是这样利用JDBC来打印Music CD的样品:
package cc.ejb.groovy;import java.sql.Connection;
|
|
« 1 ›
|