Description:
If you have familiarity with Java or an object-oriented program language like C++, the All-in-One Java 2 Exam Guide does a competent (if not exceptional) job of explaining the individual components, features, and functions of Java--but if you're weak on concepts, you'll definitely need another book to back this up.The organization of the book is fairly simple, starting off with the absolute basics of programming, moving on to slightly more advanced topics like switch and case statements, then walking the reader through most of Java's functions, arguments, interfaces, and exception handling on a case-by-case basis. The book's explanations are fairly minimal, explaining each function quickly with relevant snippets of code, which demonstrate either a function or how to do some commonly requested task (these are sparsely documented, however). Programmers will nod sagely, appreciating the no-nonsense way the book rips through a large amount of data in short order, and if you know what you're doing you can very quickly get a lot of information. The code segments are clear and concise, and generally are useful for illuminating the proper way to use a function or structure something--and there is an awful lot of hands-on code to play around with here. Unfortunately, if there's a snippet of code that you don't quite understand, you may be left up the creek--or have to tinker with the code yourself to see how it works. And the code isn't linked together to form a single program at the end of each chapter, as in some books that try to explain programming. If you're used to programming with a goal in mind rather than just programming for the sake of experimentation, you could have some troubles here. People fuzzy on the more conceptual portions of Java may be left behind, too, as the book's strong point is going through what Java does, not why it does it. If you're weak on why inheritance is such a valuable thing to use... well, then you probably shouldn't be coding in Java anyway. But if you don't quite understand the concept of thread synchronization and why a programmer would be concerned with it, the Java 2 Exam Guide goes over it in a single page. The writing, when it comes to explaining concepts, is clunky--it will tell you what Java does to handle threading, but not really explain why. Another slight problem with the book is its lack of test focus. It goes through Java in a fair amount of detail, but doesn't really explain what's likely to be on the test and what isn't. As stated, there's a lot of information packed into these pages, and it comes very quickly. It would be nice to know what are the questions that almost invariably arise on the exam, common mistakes that programmers have, etc. This is more of a reference book than a tutorial, so slimming down the reader's choices would have been helpful. Each chapter contains exercises and a set of questions. The exercises, again, are good in the hands of a programmer who knows what they're doing--generally, a goal is given in an exercise ("Write a program that writes your phone number to a file as an int with a seven-digit number"), with a sample program given at the end of the chapter. But again, the exercise's "answer" is just a code segment, so hopefully you'll either understand how it works or be able to fool with it and deconstruct why it did. The questions are multiple choice and are fairly tough, but not backbreaking. In short, this is a book that is slanted far more toward reference than to test-taking or tutorial. As such, it's useful for those who already understand Java to a large extent and are looking to lock down their knowledge before they actually spend the money on the test, and experienced programmers will appreciate the brevity involved. Those with less savvy, however, may wish to find another book to go with. Recommended for the experienced. --William Steinmetz
|