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
Title:
Refactoring Workbook
Author:
William C. Wake
ISBN:
0-321-10929-5
Publisher:
Addison-Wesley
Pages:
235pp
Price:
£26-99
Reviewer:
Francis Glassborow
Subject:
refactoring; java
Appeared in:
15-6
I like the idea behind this book, to provide an understanding of refactoring by example and exercises and I think many programmers could benefit from such a study but the book has too small a target readership. The problem is that many of the examples come from XP (Extreme Programming) sources. That is irritating, but more to the point is that they are Java ones. I think that programmers from other languages (such as C, C++ and C#) will be constantly distracted from the main thread by the examples and exercises being in a language that is subtly different to that with which they are familiar.

I completely understand that it is very difficult to provide multi-language coverage in a practical book but there are ways of addressing this. Many of the examples/exercises could have been at function rather than class level and thereby have a far greater degree of commonality. I think that it could be possible to provide alternative examples in other languages even if those were mainly in an electronically readable form (CD or website).

On the positive side the author's classification of code smells is useful and helps the programmer to focus on particular aspects of code that may lead to either simple, in place, changes or to refactoring.

If you program in Java working through this book will almost certainly improve your code. If you are not reasonably fluent with Java I think you should be encouraging the publisher and author to revisit the issue with an alternative edition. I think the loss of value for those who mainly program in another language is too great to justify the cover cost.