A Bold, Broad Stroke in Comprehensive Form
Carefully crafted, voluminous coverage with minimal compromise, ahead of its time.
It’s clearly risky to release a book about Java 1.2 before the final release. The 1.2 JDK has gone through 4 beta releases and is down to the final stages before final the release hits the web. Obviously, the API is pretty solid and only a few pieces are still changing. In fact, normally, I’d advise caution in this kind of purchase, but this is a book worth the investment. The author covers a multitude of new features like the Collections API, Swing, drag-and-drop and the graphics 2d API.
I was interested enough in the Java 2d API to read the specifications from Sun a while back. These were very clear, but Mastering Java 1.2 brought coverage that lead me to a much greater understanding. The coverage was broad enough to fill in several holes and took an approach that made the learning experience flow readily. The author’s style brings together the information you need to make sense of a number of new topics, without neglecting the obvious or over simplifying the content. This guides the reader through a natural progression and the coverage is quite extensive.
Mastering Java 1.2 is divided into three parts: "Foundations of Java", "Applying Standard Java Classes" and "Advanced Topics". The first part covers enough to be comfortable to Java newcomers, introducing Java, its history and architecture, moving on to applets and applications, objects and language elements, classes, packages and interfaces, exceptions, threads and other basic concepts. Part I explores all this in less than 250 of the more the 1200 pages in this book.
Part II is the most interesting for developers moving from Java 1.1 to Java 1.2. The first chapter covers all the standard packages with a description of each in enough detail to provide a high-level road map to the whole API. We then launch into imaging, 2d graphics and GUI development. Chapters 13 and 15 cover the Java Foundation Classes (JFC, a.k.a. Swing) and sandwich a chapter that covers event handling in great detail. Chapter 17 "Java Collections" provides the information you want to put the Collections API to work right away, including links that allow Java 1.1 users to apply the Collections API immediately. Chapters 19 and 20 cover streams, I/O and network programming very nicely.
Part III covers advanced topics like JDBC, JavaBeans, Servlets, Security, RMI and CORBA. There are entire books dedicated to each of these, so the coverage is naturally limited to the most important issues. No single chapter can do justice to topics like JDBC and CORBA programming, for example. Its hard to tell whether the publishers decided to keep the Servlets chapter in place despite Sun’s announcement that it would not consider the Servlet API part of the core release. The coverage is instructive in either case and, in my own view, fits well with the other topics explored in this part of the book.
I found this book to be more than valuable. At $50 for 1200 pages, the investment is well worth the expense. In fact, this is almost certainly the thickest book in my Java collection. While I would have preferred two smaller books (or possibly three, given the three part division), I put up with the extra weight because the content was well worth reading. I’ve see a few other books that cover 1.2 before the final release. From browsing those (two of them, as I recall), I didn’t get the feeling that the quality level was there. Whatever you might think of early releases, this book does not stand as a compromise, but rather a beacon to light the way toward the final Java 1.2 release.