ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib 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 1949 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
Title:
Holub on Pattems
Author:
AIIen Holub
ISBN:
1-59059-388-X
Publisher:
Apress
Pages:
412pp
Price:
£31-50
Reviewer:
Alan Lenton
Subject:
patterns
Appeared in:
17-1
This interesting, if rather pretentiously titled, book sets out to overcome that vexing gap between the abstract concept of a pattern and how exactly you use it in real life code. The language used for the code is Java, but a competent programmer should be able to cope with the code, even if not a Java expert.

The book uses two full-length programs to achieve its ends. The first is a vastly over-engineered program of Conway's Game of Life, and the second is a production grade embedded SQL implementation. Between them the programs implement all the Gang of Four (GoF) patterns.

I found this book useful. It is a while since I last looked at the GoF book, and this raised enough issues to make me want to go back and take a fresh look from a different angle. I learned two important things from reading the book.

The first was the usefulness of patterns in communicating between programmers. Using patterns can be a very succinct and accurate way of communicating your intent and requirements.

The second was that an object in a program can have different roles within several different patterns. I guess I had known this, but not really thought about it before, and certainly not articulated it.

I also picked up a lot of useful tips and techniques from reading through the code presented in the book, and the introduction on objects contained some interesting ideas that I had not really considered in any depth before.

I have only one caveat. The Life program is on the verge of being so complex as to defeat its own purpose. It would probably have been better to have had three different programs rather than trying to stuff so many patterns into one program. There is a suggestion at the end of the section that the program is an example of the problems that can arise with hard pattern oriented design. Nice try, but no cigar, Mr Holub!

A useful adjunct to the GoF book.