[后来:仍然无法弄清楚Groovy是否有静态类型(似乎没有)或者使用显式类型生成的字节码是否不同(似乎是).无论如何,关于这个问题]
Groovy和其他动态语言(或至少是Ruby)之间的主要区别之一就是你可以 静态 在需要时显式键入变量.
那就是说,什么时候应该在Groovy中使用静态类型?以下是我能想到的一些可能的答案:
我不只是对你的工作感兴趣,更重要的是你在Groovy编码的项目中看到的.什么是常态?
注意:如果这个问题有些不对或错过某些类别的静态动态,请告诉我,我会解决它.
Dón*_*nal 16
根据我的经验,没有规范.有些使用类型很多,有些从不使用它们.就个人而言,我总是尝试在我的方法签名中使用类型(对于params和返回值).例如,我总是写一个像这样的方法
Boolean doLogin(User user) {
// implementation omitted
}
Run Code Online (Sandbox Code Playgroud)
即使我可以像这样写
def doLogin(user) {
// implementation omitted
}
Run Code Online (Sandbox Code Playgroud)
我这样做是出于以下原因:
doLogin使用非User参数调用静态类型版本,它将立即失败,因此问题可能很容易修复.如果我调用动态类型的版本,它将在调用方法后失败一段时间,并且失败的原因可能不会立即显而易见.出于同样的原因,我也在我的方法的实现中使用了相当多的类型.事实上,我不使用类型的唯一时间是:
BTW,我不会把太多的信心在您连声称类型Groovy是不是类型化的Groovy快得多该博客文章.我以前从未听过,我没有发现证据非常有说服力.
| 归档时间: |
|
| 查看次数: |
4411 次 |
| 最近记录: |