为什么Java开发人员应该学习其他JVM语言?

时间:2010-01-14 14:12:26

标签: java jvm jvm-languages

我是一名java开发人员,我想知道, 学习Scala或Groovy等语言的主要好处是什么?

9 个答案:

答案 0 :(得分:10)

学习任何新语言,学习另一种JVM语言都可以获得同样的好处。它增强了您对编程的理解,更重要的是, 为您的工具箱添加了另一个工具。

所以下次你必须解决问题时,你可能需要用钉枪而不是锤子。

更具体地说,Groovy是一种很好的语言,可以快速模拟代码,而Scala虽然从未使用它,但由于它的功能性方法,它非常适合编写并发应用程序。正如其他人所提到的,JVM语言可以与Java代码交互。这对于添加到旧系统或快速模拟应用程序的各个部分非常有用。

答案 1 :(得分:5)

浮现在脑海中的一些好理由:

  • 它们具有Java没有的功能,并且在某些情况下您可能会觉得有用。
  • 他们使用不同的编程范式,不同的思维方式。
  • 学习其他语言会让您大开眼界。
  • 学习语言会让你意识到各自的优点和缺点。
  • 他们受到越来越多的关注和更好的JVM支持(使用Java 7)。

实际上,也许会问自己相反的问题:

  • 为什么不学习附加的JVM语言?

答案 2 :(得分:3)

这里的其他答案都有很好的观点,但有一点我不知道 一个优秀的程序员很少将自己标识为“Java开发人员”,“Python开发人员”或任何“开发人员”。学习另一种语言(无论是否是JVM语言)将使您了解世界上还有更多要学习的东西。

如果您只对一种语言感到满意,通常意味着您对其所遇到的问题一无所知,并且有许多任务更适合其他语言。

这就是实用程序员鼓励每个程序员每年学习一门语言的原因。

答案 3 :(得分:2)

您提到的语言实践了一种不同的编程范例,可以帮助您提高工作效率。与他们合作也更有趣。

Scala和Clojure等语言在JVM上运行,在多核系统中表现出色,而不会产生同步要求。

当然,您仍然可以使用可用于Java的丰富库。

答案 4 :(得分:1)

来自http://groovy.codehaus.org/

“Groovy就像Java的超级版本。它可以利用Java的企业功能,但也具有很酷的生产力功能,如闭包,构建器和动态类型。如果您是开发人员,测试人员或脚本大师,您必须喜欢Groovy。 “

因此,在许多情况下,使用Groovy而不是Java是有意义的;例如在Java单元测试中!

答案 5 :(得分:1)

因为那时你会认识一种新语言,这意味着更广泛的技能和另一种看待问题的方法。但是因为Groovy和Scala在JVM上运行并且您了解Java,所以如果您需要或者需要,您可以集成现有的库和代码。

答案 6 :(得分:0)

jvm中的脚本语言优势。与编译的java代码无缝交互。

答案 7 :(得分:0)

我知道使用Groovy,您可以在运行时从Java应用程序加载脚本(来自文件)。这允许我在客户端站点自定义应用程序操作的行为,而无需重新编译代码。这很可爱。

答案 8 :(得分:0)

对不起更多问题然后回答..

  • 如果你不学习新语言,你会花多少时间学习?
  • 为什么要限制自己使用JVM语言?
  • 学习测试驱动开发会有更多好处吗?
  • 学习标准外观设计专利怎么样?
  • 投资尝试实现的是什么?

学习一门语言总是好的,但是如果你不能很好地学习它们并使用它们就不会得到很大的好处,因为你需要能够“用语言思考“以便扩大你的思想。

在公司中使用多种语言会导致大量额外的长期成本,因此您可以通过学习如何使用主要语言更好地编程来获得更多,只有您可以决定。