【转】实战 Groovy: Groovy:Java 程序员的 DSL
用 Groovy 编写更少的代码,完成更多的工作
级别: 初级
Scott Davis , 创始人, ThirstyHead.com
2009 年 3 月 09 日
Groovy 专家 Scott Davis 将重新开始撰写 实战 Groovy 系列文章,该系列文章于 2006 年停止编写。作为开篇文章,本文将介绍 Groovy 最近的发展以及 Groovy 当前的状态。然后了解大约 从 2009 年开始,使用 Groovy 是多么轻松。
Andrew Glover 于 2004 年开始为 developerWorks 撰写关于 Groovy 的文章,他先撰写了 alt.lang.jre 系列中的介绍性文章 “alt.lang.jre: 感受 Groovy ”,又继续撰写了长期刊发的 实战 Groovy 系列。发表这些文章时市场上还没有出现关于 Groovy 的书籍(现在这样的书籍超过十几本),而且 Groovy 1.0 在几年后才于 2007 年 1 月发布。自 2006 年末发布 实战 Groovy 的最后一期后,Groovy 发生了很大的变化。
现在,Groovy 每个月的平均下载数量大约为 35,000。Mutual of Omaha 等保守的公司拥有超过 70,000 行 Groovy 生产代码。Groovy 在 Codehaus.org 中有一个最忙碌的邮件列表,这是托管该项目的位置(请参阅 参考资料 )。Grails 是惟一一个拥有较多下载数量以及繁忙邮件列表的项目,它是在 Groovy 中实现的流行 Web 框架(请参阅 参考资料 )。
在 JVM 中运行非 Java™ 语言不仅常见,而且也是 Sun 的 JVM 策略的核心部分。Groovy 加入进了 Sun 支持的备选语言(如 JavaScript, JavaFX, JRuby 和 Jython)行列中。2004 年所做的实验现在成为了最前沿的技术。
2009 年撰写的关于 Groovy 的文章在许多方面与 Andy 开始撰写的文章相同。2005 年确立的语法仍然保留至今。每个发行版都添加了引人注目的新功能,但是对于项目主管来说,保留向后兼容性是极为重要的。这项可靠的基础使得 Java 开发组织在其应用程序进入生产环境并开始依赖各项技术时,毫不犹豫地选择了 Groovy。
本文的目标是使经验丰富的 Java 开发人员可以像 Groovy 开发人员一样进行快速开发。不要被它的表面所蒙骗。本系列如名称所示全部都是实际使用的 Groovy 实践知识。在最开始编写完 “Hello, World” 之后,请准备好尽管掌握实际的应用。
关于本系列
Groovy 是运行在 Java 平台上的现代编程语言。它将提供与现有 Java 代码的无缝集成,同时引入闭包和元编程等出色的新功能。简言之,Groovy 是 21 世纪根据 Java 语言的需要编写的。
把任意一个新工具集成到开发工具包
相关文档:
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......
以下对BIG-ENDIAN、LITTLE-ENDIAN的解释正好弄反了!!!!
BIG-ENDIAN(大字节序、高字节序)
LITTLE-ENDIAN(小字节序、低字节序)
主机字节序
网络字节顺序
JAVA字节序
1.BIG-ENDIAN、LITTLE-ENDIAN跟多字节类型的数据有关的比如int,short,long型,而对单字节数据byte却没有影响。BIG- ......
变量是Java 程序的一个基本存储单元。变量由一个标识符,类型及一个可选初始值的组合定义。此外,所有的变量都有一个作用域,定义变量的可见性,生存期。
声明一个变量
一、 静态初始化
在Java 中,所有的变量必须先声明再使用。基本的变量声明方 ......
public class FilePath {
public void Print() {
String a = this.getClass().getClassLoader().getResource(".").getPath();
String b = this.getClass().getResource("").getPath();
String c = this.getClass().getResource(" ").getPath();
&n ......