0

在 groovy 中编程时,我发现自己避免使用 def 关键字,因为我喜欢使用类型的明确性。我想知道使用类型与使用 def 注入服务有什么含义?我想它对模拟注入的可测试性有潜在的影响。还要别的吗?

我看到文档中提到的两种方法。

人们现在认为最佳实践是什么?

4

2 回答 2

1

当使用显式类型声明时(对于 2.0 之前的 grails),重新加载注入其他服务的服务曾经存在问题。我在 grails jira 中没有看到任何关于此的最新信息,因此这可能已在更新的版本中得到修复。

于 2012-12-10T19:15:42.513 回答
0

def是类型名称的替代品。在变量定义中,它用于表示您不关心类型。用'def'声明变量和用已知类型声明它有什么区别吗?

def num = 1
Integer number = 2

assert num.class == Integer
assert number.class == Integer

我更喜欢使用def依赖注入,我认为这是 Grails 中最常见的。

于 2012-12-10T12:51:53.367 回答