浏览 3844 次
|
锁定老贴子 主题:Groovy Notes
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2005-07-08
1.Groovy的最新八卦资料
1.1 wiki http://docs.codehaus.org/pages/listpages.action?key=GROOVY 1.2 mail list在线浏览,RSS订阅 Developer List http://dir.gmane.org/gmane.comp.lang.groovy.devel User List: http://dir.gmane.org/gmane.comp.lang.groovy.user 2.Groovy开发现状 编译期健壮性大大增强的1.0 JSR-2已发布,仿Ruby的maxin功能等特性已经被放到1.1版本,当前的版本将全力除bug。 3.Migrating to JSR JSR的最大改动主要两处,网上很多Groovy文章都是基于旧语法的,需要自行改正过来 3.1 为了加强代码健壮性,Class里的变量需要用def 定义, 而在script里的变量,因为需要动态binding,仍然不需要def定义. 3.2 多行的String需要用 """ """来括住,这个改动连simpleTemplateEngine在JSR2里都没有跟上. 4.Groovy and Java GroovyC会把groovy文件编译成Java class bytecode。 其中Class会编译成GroovyObject的子类,script代码段会编译成Script的子类 1.GroovyObject类默认有get/setProperty()和invokeMethod()的反射接口 在Java里通过反射接口来调用。 如果是静态编译的可以直接调用Groovy类的方法。 2.Script类有Script(Binding)构造函数和run()接口 在java里通过run接口进行调用. 可以用GroovyC静态编译,也可以用GroovyShell把groovy文件动态parser成GroovyObject/Script类 Groovy和Groovy的框架类库都是用Java写出来的的.所以有些类库如SimpleTemplateEngine,也可以在Java里直接使用. 5.groovy-all-1.0-jsr2.jar groovy需要asm和antlr包的支持,使用groovy-all-10-jsr2.jar,将预带这两个包的正确版本,非常省心. 6.groovyJ插件 IDEA插件,最有用的功能是编译Java文件目录的时候,会把groovy文件也同时编译,另外有语法变色和Run()功能. 日后将支持重构,类间跳转等功能。 7.一些重要的开发人员 两个Founder:Bob Mcwhirter (The Werken Company) James Strachan (Core Developers Network) 三个ThoughtWorks的开发人员 Joe Walnes,Chris Stevenson,Matt Foemmel 四个star of this JSR-2: Jeremy Rayner, Jochen Theodorou,和两位老大一起改进JSR-2编译的强壮性和出错信息显示 Franck Rasolo:IDEA插件GroovyJ的开发人员 Christian Stein:Groovlet,Template的开发人员 BTW. Grails--Groovy on Rails的倡导者: Steven Devijver 8.SimpleTemplateEngine-总共200行就实现了JSP engine的功能 动态语言开发框架很方便啊,所以Ruby on Rails没有IDEA级的IDE都能这么就快开发出来,把MVC,ORM都实现了一遍。 请看src/groovy/text/SimpleTemplateEngine.java 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
时间:2005-07-11
虽然我一直在用java,平心而论,groovy目前的版本和ruby还是差很多的, ruby的设计思想已经深入到他的基本类库和大量第三方类库中,写程序非常舒服,但是我试用groovy还是感觉到太多java的影子,写几个小test还可以,一旦要真的开始干活就觉得缩手缩脚的。 语法上是方便了一些, 不过用groovy我还是觉得我在用java思考,呵呵
ps一句:个人以为ruby这样的语言 ide是帮不了太多忙的,人家的思想就是很多东西都是运行时刻决定。 |
|
| 返回顶楼 | |
|
时间:2005-07-11
1. 有java的影子不是坏事,java还没烂到需要全盘否定、砸烂了建立一个美丽新世界。
我觉得动态语言不会在短时间内完全替代静态语言,而更多的是两者互相融合。Groovy的做法对于降低降低学习曲线,重用旧代码都有好处,毕竟java 程序员与java 类库的数目都相当庞大。 可能你的意思是Groovy在做法上太相似于Java,没有动态语言的革新。 我觉得这不公平,语法上Ruby支持的Groovy基本上都支持,Maxin功能也会在1.1版本加入,所缺的可能仅仅是数量庞大的纯动态语言的基础类库而经常要借用Java的库,导致你觉得的不爽,比如Gails对Spring框架的大量借用也让我觉得有点不爽。 但假以时日,以Groovy在javaone的受欢迎程度和java社区的压倒性力量,这不难扳回。 2.所有忽视IDE作用的想法都很可能有失偏颇:) |
|
| 返回顶楼 | |
|
时间:2005-07-11
江南白衣 写道 1. 有java的影子不是坏事,java还没烂到需要全盘否定、砸烂了建立一个美丽新世界。
我觉得动态语言不会在短时间内完全替代静态语言,而更多的是两者互相融合。Groovy的做法对于降低降低学习曲线,重用旧代码都有好处,毕竟java 程序员与java 类库的数目都相当庞大。 可能你的意思是Groovy在做法上太相似于Java,没有动态语言的革新。 我觉得这不公平,语法上Ruby支持的Groovy基本上都支持,Maxin功能也会在1.1版本加入,所缺的可能仅仅是数量庞大的纯动态语言的基础类库而经常要借用Java的库,导致你觉得的不爽,比如Gails对Spring框架的大量借用也让我觉得有点不爽。 但假以时日,以Groovy在javaone的受欢迎程度和java社区的压倒性力量,这不难扳回。 2.所有忽视IDE作用的想法都很可能有失偏颇:) groovy这个语言我也很喜欢。不过目前的不爽的地方是: 我用java大多数时间是要和各种各样的类库打交道, groovy有Closure, 很好, 不过有多少成熟的类库支持你用closure呢。我依然得一行一行的调方法, 和java没有什么两样。 和ruby比,java世界太大了,框架满天飞,各种script也不少,能不能把groovy扶上位,还是一个未知数。我相信, groovy能很大程度简化java开发,但是我相信用上了groovy的java开发和ruby-rails方式的开发相比,依然是两回事. |
|
| 返回顶楼 | |





