Long back I read Effective Java (1st Edition) and I remember that it was a revelation. Some time later news began emerging of an upcoming 2nd edition and I, like many others, couldn’t wait for it especially given that it had been revised and updated for Java SE 6. Today, I’m very glad to say I finished Effective Java (2nd Edition). It was an excellent read and the Christmas holidays provided the requisite time and a much needed respite from the relentless work routine to be able to get through the material undisturbed. All in all I can’t recommend it strongly enough except to say that it is an absolute must read for anyone who knows Java.
My favourite chapters were Concurrency and Generics although I very much enjoyed Creating and Destroying Objects, Methods and General Programming. My least favourite, although an excellent read still, was Serialisation simply because this feature in my experience is very rarely used by the developer although abstractions and frameworks may use it. My only reservation is that I wanted more on many of the topics touched upon in this book for which I will have to now pick up tangents via the numerous references made to other books some of which are contributed to by the same author. What interested me most were Concurrency and Generics and, on these topics, I’m very much looking forward to reading Java Concurrency in Practice next along with Gilad Bracha’s Generics treatise. I have quite a few books in mind that I want to get through next but time eludes me. Hopefully, in the new year, I’ll be able to stay true to my resolution of reading more.