1

Ruby 模块使诸如将数据库连接或其他依赖项传递给各种对象之类的事情变得更加容易,同时允许关注点分离。Groovy 是否支持类似的功能?如果是这样,它叫什么?

4

1 回答 1

2

在 ruby​​ 中,模块要么用作 mixin,要么用作类的命名空间(例如Net::HTTP)。

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

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

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

于 2013-08-07T18:59:34.747 回答