Book Review – “Refactoring for Software Design Smells”

ACM SigSoft Software Engineering Notes

A short review of our design smells book titled “Refactoring for Software Design Smells: Managing Technical Debt” has recently appeared on ACM Sigsoft Software Engineering Notes. The review is written by Will Tracz.

Some of the important points mentioned in the review are presented below:

“This is a good book about “Design Smells” – actually a great book – nicely organized – clearly written with plenty of examples and a fair sprinkling of anecdotes.”

“The authors established good naming convention of Smells.”

The full text of the review can be accessed via ACM digital library – http://dl.acm.org/citation.cfm?id=2830739

ACM

ACM Computing Reviews

A review of our design smells book titled “Refactoring for Software Design Smells: Managing Technical Debt” has recently appeared on ACM Computing Reviews. The independent review is written by Nathan Carlson.

Some of the important points mentioned in the review are presented below:

“What follows is a well-researched and well-written catalog of design smells, organized in four broad headings according to design principles in view.”

“Because the discussion of each design smell includes these seven major headings, these four chapters provide a broad overview of design smells in practice, as well as a useful reference guide for practitioners.”

“Given its practical orientation and the variety of real-world examples offered throughout the book, this is a must-have for any practicing software engineer, developer, software architect, or anyone else interested in software design. This book would also provide a good introduction to real-world problems in the context of a software design or architecture course.”

The full text of the review can be accessed via ACM Computing Reviews – http://www.computingreviews.com/browse/browse_reviewers.cfm?reviewer_id=123466

ACM Computing Reviews - book

Adam Tornhill

Recently, Adam Tornhill reviewed the “Refactoring for Software Design Smells: Managing Technical Debt” book. Some of the important points mentioned in the review are as follows.

The design smells themselves are described in a strict format (like patterns). We get a name for each smell, rationale and cause, some examples and finally a discussion on suggested refactorings. This template for design smells serve the book well. I consider this book a reference.

There are several things I like with this book. First of all, the book covers an important gap in the existing literature. I also love that the examples are smells from real-world codebases (often from the JDK).

The authors also introduce short anecdotes as sidebars. That’s a great way to make the text more accessible[…] We developers love software war stories and the authors have plenty of them.

To summarize, Refactoring for Software Design Smells is a valuable catalog of potential problems that you’re likely to experience in all large-scale systems. It’s also a book that does a good job at teaching fundamental object-oriented principles. This is a highly recommended read for Java and C# programmers.

You may find the complete book review here.

Adam Tornhill is a well-known author and speaker. He has authored following books “Your Code as a Crime Scene” (The Pragmatic BookShelf), “LISP For the Web” (LeanPub) and “Patterns in C” (LeanPub). Find more about him on his website.