阅读更多

9顶
2踩

编程语言

原创新闻 Groovy 2.1发布,完全支持“动态调用”

2013-01-28 10:44 by 副主编 wangguo 评论(8) 有7548人浏览
Groovy团队近日发布了最新的Groovy 2.1版本。


在Groovy 2.1版本中,引入了诸多新的特性:

  • 提供了对JDK 7 动态调用(invoke dynamic)字节码指令和API的完整的支持。
  • 通过特殊注解来辅助文档和专有领域语言,从而改善静态类型检查功能,此外,新增了静态类型检查器扩展
  • 提供了自定义编译选项
  • 元注解更灵活,与注解结合更优雅
  • 其他各种功能增强和改进
详细信息:Groovy 2.1 release notes

下载地址:http://groovy.codehaus.org/Download?nc

开发团队称,在2012年,Groovy已经被下载超过170万次,并与一些成功的Groovy项目(如GrailsGradleSpockGriffon等)一起构成了一个强大的生态系统。团队表示,会在未来不断改进Groovy的现有功能并增加新的功能,使得该语言得到长足发展。
  • 大小: 14.6 KB
  • 大小: 41.2 KB
9
2
评论 共 8 条 请登录后发表评论
8 楼 热带翎羽 2013-01-30 18:28
:http://groovy.codehaus.org
mmhotsky 写道
Groovy靠谱吗?因为没有足够的经验,始终没有在项目当中大规模的使用过,有用过的兄弟吗?谈下心得呗

商用项目用过,Performance木有问题!缺点是:IDE支持和“动态语言”带来的难以调试,必须使用TDD
7 楼 wushexu 2013-01-30 15:49
scala我也学习过。它是强类型,加上类型推断。一大能力是模式匹配,还有原生的并发支持(actor模式)。因是强类型,运行效率会比较高。并发支持groovy有gpars库,相当好,也不一定非要在语言级别支持。我是更喜欢无类型(不需类型声明)的动态语言,所以不用scala。scala学习起来会比groovy难些,在团队中使用也是要考虑的。
6 楼 skyfaint 2013-01-30 11:15
对scala的看法
1. scala或许在语言设计上非常优雅,这个我没有什么发言权。
2. 它支持各种语言

但是它的学习曲线太过陡峭,我试图推过几次,但是包括我在内的几个组员都不看好它,积极性不高。而且如果是在项目中采用动态语言的一个重要的原因一定是希望开发速度快,这个它反而又没有优势。相比而言jython, groovy学起来快,做起来快,和现有模块结合又好,scala更像是个叫好不叫座的东西
5 楼 skyfaint 2013-01-30 11:11
Groovy我用过,并且最终推入大型项目作为补充模块了,很不错,非常灵活提供的追加api很方便。他的closure也是随大流的结构,比还在襁褓里的jdk8的优雅多了。我觉得他的优点有
1. 方便的api和closure处理
2. 简洁的xml访问,用过java处理xml都知道这个解析有多恶心,groovy能通过xpath轻松搞定
3. 对循环的处理
4. 判断null和非null的及其后继逻辑简单实用

缺点
1. performance略有影响
2. 模块大的话还是死板一点的java好,动态语言在大模块和很多逻辑的情况下maintainance还是相对困难。不过这个不是groovy的问题
3. 部分老板对动态语言有排斥心理


4 楼 mainlove 2013-01-28 16:30
就没人研究 scala么
3 楼 mmhotsky 2013-01-28 14:06
感谢wushexu兄弟!以后有合适的机会,我会推动它在项目中使用
2 楼 wushexu 2013-01-28 13:15
mmhotsky 写道
Groovy靠谱吗?因为没有足够的经验,始终没有在项目当中大规模的使用过,有用过的兄弟吗?谈下心得呗

相当靠谱。开发效率高。
对JDK有很多方便的扩充。用groovy后几乎所有的*.util包都不需要了(包括org.apache.commons.*)。处理IO,XML,JSON都很方便。groovy.sql、AntBuilder很有用。
另外,并发库gpars很漂亮。基于Apache HttpClient的HTTP Builder用起来很爽。
不建议在计算密集型的代码里用(2.0之前版本)。支持动态调用后运行效率应该会有大幅提升。
1 楼 mmhotsky 2013-01-28 11:30
Groovy靠谱吗?因为没有足够的经验,始终没有在项目当中大规模的使用过,有用过的兄弟吗?谈下心得呗

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

Global site tag (gtag.js) - Google Analytics