Groovy Notes

王朝java/jsp·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

1.Groovy的最新八卦资料

1.1 wiki http://docs.codehaus.org/pages/listpages.action?key=GROOVY

1.2 mail list在线浏览

Developer List http://dir.gmane.org/gmane.comp.lang.groovy.devel

User List: http://dir.gmane.org/gmane.comp.lang.groovy.user

2.Groovy开发现状

编译强壮性大大增强的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的开发人员:

Jame 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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航