Groovy的春天从Java7诞生那日开始
想必關注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
總結
以上是生活随笔為你收集整理的Groovy的春天从Java7诞生那日开始的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Eclipse集成Groovy插件
- 下一篇: PM到底做什么(What Do Prod