This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Author/s : Tom Copeland
Category : Other Review by : Jeanne Boyarsky
Rating : 3 horseshoes
"PMD Applied" isn't available through Amazon or the bookstore – only through the website pmdapplied.com. As such the “reviews” I could find online were linked from the book's website and of course positive. I bought the book because I was struggling with a few PMD problems. At $30, the book would have been well worth it if it gave me a clue to solve any of those problems.
I knew the book was a number of years old (2005) and wouldn't contain updates to PMD so my expectations weren't high. Unfortunately, I was still disappointed.
The text was very superficial. Specific things I didn't like:
1) The Ant/Maven integration only covered the most common use case.
2) When walking through creating a rule, there was a lot of magic. For example, how do we know an if statement is *guaranteed* to have a Statement as it's second child. (In a later section I learned one could read the /etc/grammar/java.jit file to find this out. But this was never said, only inferred.)
3) Tips/best practices were very sparse.
4) The last 80 pages are a printout of the rules as they were in 2005. Even in 2005, this was a poor use of space. I expect a book to teach not be the API.
On a positive note, I did find the chapter on how PMD works interesting. I would not recommend buying this book though.