java - 除了性能问题,为什么仍然选择 Java 而不是 Groovy/JRuby 等?

标签 java groovy jruby dynamic-languages

[这是一个关于最先进技术的经验性问题:我不是在问 Java 是否比在 JVM 中运行的动态语言更酷或更不酷。]

除了性能是主要决定因素的情况外,公司/开发人员是否仍然愿意选择 Java 而不是 Groovy、JRuby 或 Jython?

编辑:如果答案是"is",为什么?

个人注意事项:我问的原因是,虽然我在 Ruby(目前不是 JRuby)中做一些专业工作,但在我的个人项目中我使用 Java。虽然我用 Groovy 编写过重要的应用程序,但我更喜欢 Java,但我想知道我是否应该克服它并在 Groovy 中完成所有事情。我喜欢 Java,因为我觉得静态类型可以节省我的时间并帮助重构。 (不,我不熟悉 Scala。)但是,我觉得这个非常经验性的、切合主题的编程问题可能会影响我的决定。

最佳答案

非静态类型语言在维护意义上不能很好地“扩展”。它们最多可维护几万行代码。过去,他们只是需要更多的努力来维护、重构或更新。这对于任何非静态类型语言都是如此,Perl、Python、Groovy、Ruby 等。用于处理 50 万行 Python 代码的工具与 C/C++/Java 中相同数量的代码行相比只是在那里。现在确实,Python 的代码行数大约是等效 Java 程序的 1/3 到 1/5。所以这永远不会是苹果和橘子,但有一个分界点,非静态语言的代码行数将减少维护 yield 。众所周知,维护一直是软件项目的真正成本所在。

关于java - 除了性能问题,为什么仍然选择 Java 而不是 Groovy/JRuby 等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2802356/

相关文章:

Java BigInteger 给出了不正确的结果

java - 在使用 Java 8 流的存储库上使用 Spring Data Rest(对于查找器返回类型)

java - 如何将Arraylist数据转换为Vector类型?

design-patterns - 这种带有闭包的模式有名字吗?

grails - 在Where查询中可以引用多少个关联级别是否有限制?

jruby - 在 Jruby 中使用自定义 Java 类文件

Java swing、超出范围的变量和按钮的使用

java - 使用 Java 从多行字符串中删除空行

ruby-on-rails - Rails 应用程序连接池大小,避免最大池大小问题

ruby-on-rails-3 - 使用 Object.const_set 创建 rails 模型