ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Google+ ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1918 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
The Object-Oriented Thought Process 2ed
Matt Weisfeld
Developer's Library
James Roberts
Appeared in:
When I first picked up this book, I was hoping to read insightful commentary on the process of developing object-oriented software. Instead, the book opens up with basic information about OO constructs (e.g. 'what exactly is a class?'), illustrated with Java code. I found this somewhat baffling. Surely, anyone that can understand Java understands what a class is?

Some of the chapters of the book were potentially useful, discussing (in a relatively basic way), for example, the advantages of clearly defined interfaces, and abstraction. These chapters might be useful reading to someone who had just got to grips with the syntax of an OO language, but was lacking guidance for system design. A detailed example showing how a blackjack game might be designed worked well, and was clearly written.

Towards the end, I felt that the author was trying to bulk out the book. A nod to patterns included an implementation of 'Singleton'. Mentioning patterns I thought appropriate, but the level of detail was almost certainly not. Perhaps a more general description of the wider use of rather more interesting patterns might have been more useful here.

Some sections left me slightly baffled. A comparison of XML and HTML did not seem appropriate for this title, and neither did a section on JavaScript. They seemed to be somewhat off-topic, and although they might form an interesting discursion for some readers were probably a little too detailed for this purpose. Some readers might also find them somewhat patronising (not having studied object orientation does not imply that you know nothing about computers).

In short, about half of this book would be reasonably good introduction to OO programmers who have just started learning a programming language but needed help seeing the big picture. Much of the rest, in my opinion, fails due to a lack of focus on the target audience.