May 3, 2012

Java 7 New Features CookBook - Review

Java 7 New Features CookBook by Richard M. Reese and Jennifer L. Reese is a good read but could have been better. As the name suggests this is a cook book containing recipes describing new Java 7 features.
Java SE 7 (or Java 1.7) was released in July 2011.
Lots of features have been introduced in Java 7 and the authors have covered most of them.

The target audience of this book are experienced Java developers who are familiar with writing programs in Java 5 and beyond and not for newbies to Java. Most of the recipes revolve around I/O i.e. File, Paths , Streams concurrency - which means a previous knowledge of these concepts are essential.

What's good:
The book contains 11 chapters:
covering core language improvements like using String in switch, using the diamond operator for constructor type inference etc,  to various recipes related to Java I/O, to GUI improvements, event handling to JDBC enhancements.
Each recipe follows a standard structure describing how to grasp the concept thru code. It is not necessary to read from start to end, the reader can jump into any recipe and read it.
Also most recipes includes caveats and gotchas which are immensely helpful for the developer.

What could have been improved:
Code examples are very basic. The authors could have taken better interesting examples to illustrate the concepts.
The code blocks are not reader friendly. The font, the formatting etc is sub-standard. This is the crux of the recipe and developers hate to see their code badly formatted.
Examples could have been less repetitive. Seems like the authors were in a hurry to release the book :)

What's missing:
A little bit history on Java versions. This helps readers to refresh the memory and sets some context.
Something on RIA Deployment toolkit, Custom classloaders, Garbage collector etc

Easy to read and understand. Worth picking up.  Highly recommended for someone who wants most of the new features in Java 7 in one place with code examples.

Thanks for reading..

No comments: