Groovy是否支持像Ruby Modules这样的东西?

时间:2013-08-07 15:02:29

标签: ruby groovy mixins dynamic-languages

Ruby modules可以更轻松地将database connection or other dependencies传递给各种对象,同时允许分离关注点。 Groovy是否支持类似的功能?如果是这样,它叫什么?

1 个答案:

答案 0 :(得分:2)

在ruby模块中,可以用作mixins或命名一个类(例如Net::HTTP)。

要混合行为,您可以使用@mixin注释。像这里的例子http://groovy.codehaus.org/Category+and+Mixin+transformations

对于名称空间,groovy使用与java相同的机制,即使用包(例如groovy.sql.Sql)。

我不确定这是否回答了你的问题。但是对于依赖注入,虽然它常用于ruby(甚至是scala / play)中的混合,但我还没有看到它在groovy中使用@mixin做了很多。通常使用像弹簧一样的DI容器。