Saturday, November 3, 2012
The text was well written and easy to understand. Each chapter starts by explaining what will be discussed in the pages ahead. The middle of the chapter explains the subject matter. The end of each chapter outlines which objectives of the test were covered, and a short quiz to test the reader's understanding follows. It is structured this way throughout the book.
The book is 332 pages, which is a pretty big book. Illustrations are provided for topics that would benefit from them. As one example, a discussion about pointers and the objects they reference might include an illustration. Code samples are clean, minimal, and are well constructed for the topics they are targeted towards.
Nine chapters are present. They cover: Getting Started with Java, Java Data Types and Their Usage, Decision Constructs, Using Arrays and Collections, Looping Constructs, Classes, Constructors, and Methods, Inheritance and Polymorphism, Handling Exceptions in an Application, and The Java Application.
As you might expect, the contents of the above chapters are technical in nature, explaining Java in the subjects described. The text is understandable and well presented. I do wish the ordering were a little different in places. For example, a new programmer might benefit more from learning about packages, the directory structure, etc. earlier on in the book. (This is covered in the final chapter "The Java Application".) On the whole, there is little to criticize. The book is a matter-of-fact technical tome that describes Java and how to write basic programs in it.
If I were to pick a favorite part of the book, it would probably be the explanation of Exceptions. I've read some really horrible descriptions of the checked-vs-unchecked discussion in other places, this book does a really good job on this one. There are other stand-out parts of the book as well, but IMHO this one was one of the best I've seen on this particular topic.
Readers new to Java may not realize the depth of the Java platform. This book (and the exam it is targeted towards) will give the reader an understanding of Java 'SE'. SE is the basic, desktop flavor of Java that underpins the rest of the Java development platform. Other forms of Java-- especially JEE with its servlets, JMS, EJBs, JSF, etc. are not covered in this book, even lightly. The same new-to-Java readers should be aware that Java SE is a necessary prerequisite to understanding JEE.
So, who would benefit from reading this book? Primarily new programmers who are seeking the Oracle certification. Experienced programmers who are seeking certification would also benefit, probably mostly from the explanation of the objectives of the test so they can know where to spend their time.
What's the final verdict? I would say this book is a good Java resource for anyone preparing for the SE 7 certification, and also a decent Java reference for anyone coding in Java.
The book can be found here.