返回的动态语言用户有哪些基本的Java库和实用程序?

时间:2010-03-31 03:53:12

标签: java ruby-on-rails ruby java-ee playframework

这里有很长时间的Java开发人员,但就Web应用程序来说,过去3年左右我花了更多时间使用Ruby。我真的很喜欢它,但有人担心我发现我不会在这里报道。

现在我已经找到了Play! framework,我很高兴能够获得类似Rails的Java体验速度和可靠性。除了Play!提供开箱即用,我正在寻找关于“不能错过”的库和工具的建议,Java开发人员习惯于实用,动态的体验。我发现Project Lombok,这看起来像是一种非常有趣的方法来消除很多锅炉板,不必要的Java噪音。我还应该知道什么?我知道Google在过去的三年里已经发布了很多我在Java Posse上提到的库,但我不记得它们到底是什么。我确定在我不在的时候我已经错过了其他人。

那么,最近构成基本Java工具箱的是什么?

感谢您的回答!

5 个答案:

答案 0 :(得分:5)

我说Guava是必须的。您也可以通过谷歌查看guice

如果您对多线程编程感兴趣,那么java.util.concurrent是必须的.​​.....

答案 1 :(得分:2)

对于在Java虚拟机上运行的语言,利用Java库以及与Java进行互操作,已经发生了很多事情,但这些语言更具表现力。看一下JRuby(运行Rails),Groovy(以及类似Rails的Grails),ClojureJython(Python实现),甚至是Javascript(参见用Java编写的Rhino解释器)。

特别有趣的是Scala,非常优雅地融合了面向对象的编程和函数式编程。 Scala几乎与Java一样快,与Java具有最佳的互操作性,并且非常具有表现力。 Scala程序可以比Java程序短得多。 Lift框架与Scala世界中的Rails相当。

答案 2 :(得分:1)

我始终只关注commons-lang。很多令人讨厌的东西被封装在类中。例如,它可以写入equals和hashcode。我比较projectlombok它在运行时通过反射来做,但可以排除特殊属性。

对于并发性,您可以查看Akka,它可用于Scala和Java。我从来没有测试过它,但我听说过关于它的JAX会议,看起来很好。

答案 3 :(得分:1)

今天,我发现lambdaj为你提供了很多很好的groovy式的可能性。我对此没有任何经验,但我认为值得仔细研究一下。

答案 4 :(得分:0)

为了让我的非网络软件“开放”,我总是添加(嵌入)Jetty和最近RESTEasy。让“安静”的API成为孩子的游戏。