• Post Reply Bookmark Topic Watch Topic
  • New Topic

Core Java for the Impatient question

 
Lloyd Meinholz
Author
Greenhorn
Posts: 17
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I've been using Java for a really long time (1.2). I haven't kept up with the new developments and have strayed into groovy (I love it). What are the features of Java 1.8 that would draw me back? Functional programming (if so then why not scala or clojure)? I'm honestly not trolling, just want to know your opinion. Thanks.
 
Cay Horstmann
author
Ranch Hand
Posts: 172
15
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Lloyd,

Groovy is certainly nice, but so is Java 8. Java 8 gives you static typing and great IDE support, and there are many places where it is just easier to deploy Java than Groovy. Groovy is more dynamic, which can be good or exciting. If you don't need metaprogramming (i.e. dynamically figuring out what x.foo means), then I think Java has the edge. If you use Grails, of course, stick with Groovy.

I love Scala, but I am the first one to admit that it has some very complex corners. When I need to do JavaEE or Android programming, for example, I am not dragging Scala with me. It can be done, but it's yet another thing to worry about. And when I program something open source where I hope for many collaborators, I stick to "blue collar" Java. And while I can see the appeal of Clojure, it just never grabbed me. It's primary attraction seems to be software transactional memory, but whenever I tried it, I had performance issues.

In so many situations, Java is just the pragmatic choice, and with Java 8, a lot of the cruft is gone. That's what motivated me to write a new book that takes a fresh look at the language, without the historical baggage.

Cheers,

Cay
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!