What are the main Java libraries and utilities for the returning user of a dynamic language?

Java developer for a long time, but I spent more time working with Ruby over the last 3 years or so, as far as web applications go. I really enjoyed it, but there are concerns that I have discovered that I will not stop here.

Now that I have found Play! framework , I am very pleased with the prospects of having a Rails-like experience with Java speed and reliability. Besides what plays! I make recommendations for the โ€œdon't missโ€ libraries and tools for the Java developer used for pragmatic, dynamic experiences. I found Project Lombok , which looks like a very intriguing way to eliminate most of the boiler plate, unnecessary Java noise. What else should I know? I know that over the past three years, Google has released quite a few libraries that I heard about in Java Posse, but I canโ€™t remember exactly what they are. I am sure I missed others in my absence.

So what is your main Java toolkit these days?

Thank you for your responses!

+6
java java-ee ruby ruby-on-rails playframework
source share
5 answers

I would say Guava is a MUST. You can also check google guice .

If you are interested in multi-threaded programming, then java.util.concurrent is a must ...

+5
source share

There have been many events with languages โ€‹โ€‹that run in the Java virtual machine, use Java libraries and interact with Java, but they are more expressive. Take a look at JRuby (which runs Rails), Groovy (and Rails-like Grails ), Clojure , Jython (a Python implementation), and even Javascript (see the Rhino interpreter written in Java).

Of particular interest is Scala , a very elegant fusion of object-oriented programming and functional programming. Scala is almost as fast as Java, has better Java compatibility and is very expressive. Scala programs can be much shorter than Java programs. The Lift Framework is comparable to Rails in the Scala world.

+2
source share

I always have one eye on commons-lang . Many unpleasant things were included in the classes. This helps, for example, write equalities and hash code. I compare this with projectlombok, but it does it at runtime through reflection, but with the possibility of excluding special attributes.

For concurrency, you can look at Akka , which is available for Scala and Java. I never tested it, but I heard about the JAX session about it, and it seems to be good.

+1
source share

Today I found lambdaj that gives you a lot of good groovy features. I have no experience with this, but I think it's worth taking a closer look at it.

+1
source share

To keep my non-web software "open", I always add (hugs) Jetty and recently RESTEasy . Makes the "restfull" API a child game.

0
source share

All Articles