Effective Java (2nd)
by Joshua Bloch
Date Read 2/2009
One Minute ReviewPositives* Best advanced Java book* Loaded with excellent tips* Expert voice* Broad coverage of best practices
Negatives* Some chapters too complex
General OverviewThis is the best Java book available for the advanced/experienced programmers. (For beginners, see Thinking in Java by Eckel.)
Why? Bloch shows you HOW you should be programming in Java. He shows you what to avoid. He teaches you the things that you might not be aware, or things you would only find out after you dived in to it in much detail.
NegativesI read the first edition, and this second edition is great, but some chapters have gotten a bit too complex, too difficult to understand. At least for me. I know this is really Java’s fault, as it has become a lot more complicated with version 5, but I think perhaps the author could explain it a bit better. I lost focus at times. This was the case with the chapter on Generics. Perhaps it’s just me. There are some obscure portions of generics, which are just very hard to read. (I should not blame the author for that.)
Bottom LineOverall, a great book. A must read for serious Java programmers. The tips contained in this book, there is 78 of them, are all coming from the expert. Tried and tested. And even though you might be using only a small portion, these rules of thumb are good to know, good to refer to. A very good checking point as well if you’ve been developing in Java for a few years. This book will tell you whether you’ve been going in a right direction. Or perhaps it will help you steer there.