想必关注Java的朋友不会没有听说过Groovy吧?的确,由于Groovy的语法与Java极其相近,所以对于我们这群Java狂热分子特别友好。 Groovy对于有Java基础的朋友来说,几乎可以说是唾手可得!要花点时间的是Groovy所提供的独有特性,当然不学这些特性照样可以用 Groovy进行编程,但缺了Groovy的那个味。就比如我们学英语,的确能说能写,但有些用法都很不地道,这是同样的道理。
现在Groovy已经发布了1.0正式版,网上还有《Groovy in Action》电子书下载,学习Groovy变的越来越方便了,不用因为缺乏资料,编译器报错不准而导致学习进度缓慢。而现在Groovy的项目之所以还比较少,其最主要的原因是Groovy的运行效率比较低,Groovy在2007年1月初才发布1.0正式版。
至于Groovy的运行效率低,目前还没有什么好的解决方法,这主要跟bytecode有关。但令人兴奋的是,这些用Java实现动态语言的限制将在Java7诞生那天被解除,因为Sun已经在研究一种新的专门用于动态语言被命名为invokedynamic的bytecode,这将大大提高动态语言比如Groovy在JVM上的运行效率,直逼Java。相关信息可参见Dynamic Language Support on the JVM ( http://www.artima.com/lejava/articles/dynamic_languages.html )
最后给一个较常碰到的编程问题:请打印所给文本文件(EachLine.groovy),并在行首标出行号。
EachLine.groovy源码:
def num = 0
new File("EachLine.groovy").eachLine { line ->
num++
println "$num: $line"
}
运行结果:
E:\Temp>groovy EachLine.groovy
1: def num = 0
2: new File("EachLine.groovy").eachLine { line ->
3: num++
4: println "$num: $line"
5: }
附:
Groovy官方网址: http://groovy.codehaus.org
|
||||
| · NAC安全访问控制 · 网络布线测试仪器 · Windows Server 2008专.. · Windows远程桌面应用 · 网络故障排除宝典 · 运营商封堵ADSL共享 中.. · 解析35岁技术人的价值.. · 世纪枭雄比尔盖茨的王.. |
· 主流品牌防火墙配置 · ASP.NET开发教程 · 超级计算机TOP500专题 · Vista SP1对决XP SP3 · SQL Server 2008/2005.. · 程序员如何成长? · C#技术开发指南 · 虚拟化技术还有点“虚” |
|||
|
||||
| · SOA 面向服务架构 · SQL Server 2008/2005.. · Apache技术专题 · 三层交换技术专题 · SQL Server入门到精通 · Windows远程桌面应用 · C#技术开发指南 · Apache技术专题 |
· Windows集群服务应用 · C#技术开发指南 · 国际文档格式标准开战 · 路由器设置与口令恢复 · Linux 集群技术专题 · PHP开发应用手册 · SOA 面向服务架构 · 企业数据恢复指南 |
|||
|
||||
| · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · C#技术开发指南 · 三层交换技术专题 · Apache技术专题 · C#技术开发指南 |
· Windows远程桌面应用 · 企业数据恢复指南 · Windows集群服务应用 · 路由器设置与口令恢复 · Linux 集群技术专题 · SOA 面向服务架构 · 了解统一威胁管理(UTM).. · 反垃圾邮件技术应用 |
|||