Saturday, July 7, 2012

Book Review for "The Well Grounded Java Developer"

Book Review for "The Well Grounded Java Developer"

Once in a while there comes a programming book that's so ambitious in scope that you wonder how the author can ever hope to do all the sub-topics justice.  This is one such book.  Among the topics the authors hope to cover:

- New features of Java 7
- New I/O
- JVM internals
- Dependency Injection
- Performance Tuning
- Polyglot programming, including introductions to Groovy, Scala and Clojure (beyond 'Hello World')
- Test Driven Development (JUnit, stubs and mocks)
- Continuous Integration with Jenkins, Maven and FindBugs
- Staying current in the Java landscape

All this in around 500 pages. 

If you're like me, you probably have a decent understanding of some of those topics, probably haven't had time to get to the others, and maybe even see a few spots you think you may not need.  (That was my feel after looking over the table of contents, but it changed as I read the book.)

Here's the nice part of this book:  for those spots I didn't think I'd need (i.e. web development in Clojure) the authors do a nice job of explaining why I might someday want to consider it.  The reader is often urged to make well-educated decisions about how to go about developing on the JVM.  Need to write a web application?  You are given a nice set of criteria for deciding which framework you might use, and some ideas around the topic.  Wondering how other folks go about performance tuning?  That chapter explains some 'whys' not just 'hows' as well.  I'd consider this a book for curious Java programmers, written in a way that urges methodical adaption of helpful technologies and techniques.

All things considered, I liked this book and would recommend it for anyone programming on the JVM.  It contains tips and techniques seldom seen in the junior-to-mid-level programming ranks, and covers a lot of ground in describing the contemporary Java landscape.  It won't make you an expert in any of the varied sub-topics, but it will comfortably make you aware of them and give you enough of a headstart to get you off the ground.

For anyone coding Java for a living, I'd suggest putting this book on your short list of books to have a look at.

"The Well Grounded Java Developer", currently available from Manning in early-access MEAP form, will be published later this month.

Happy Reading, Coding, Testing and Deploying!