Summary Spring Roo in Action is a unique book that teaches you how to code Java in Roo, with a particular focus on Spring-based applications. Through hands-on examples, you'll learn how Roo creates well-formed application structures and supports best practices and tools. Plus, you'll get a quick-and-dirty guide to setting up Roo effectively in your environment. About the Technology Roo is a lightweight Java console shell that simplifies compile-time tasks. It improves productivity by enforcing correct coding practices and patterns and integrates with mainstream Java technologies, including ActiveMQ, GWT, JPA, and OSGi. And, when you finish coding, it gets out of the way so there's no runtime impact. About the Book Spring Roo in Action teaches you to code Java more efficiently using Roo. With the help of many examples, it shows you how to build application components from the database layer to the user interface. The book takes a test-first approach and points out how Roo can help automate many of the mundane details of coding Java apps. Along the way, you'll address important topics like security, messaging, and cloud computing. This book is for Java developers who want to get more productive by using Roo. Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book. What's Inside ======================================================
“Spring Roo in Action” starts out with an example. Similar to the “Rails demo” where you build a complete application in 15 minutes. The book then moves on to how to use the shell and your IDE with Roo. I particularly liked the part about which files are safe to change vs which are Roo only.
The tricky thing with Roo is that readers need to understand a bit about the technologies Roo is generating code for in order to understand the examples. (Spring MVC, JPA, Dojo, Ajax, etc.) The authors cover “the least you need to know to follow.” It's more useful as a review than if you've never use the technology. But if you've never used the technology, you wouldn't be generating code for it and expecting to understand it anyway.
The other tricky thing in a book like this is that the authors are experts on Roo (and many other things) but not necessarily everything in the book. For example, the JUnit section mixes junit.framework with org.junit packages (3.8 vs 4.0). And assertTrue(a.size() == b.size()) which gives a less clear assertion failure than assertEquals(a, b). This isn't important but I'd caution against assuming everything you read is a best practice.
However, the Spring and Roo parts of the book are excellent and I couldn't find any anti-patterns in there. In a Roo book, that's what you want to see.
Disclosure: I received a copy of this book from the author in exchange for writing this review on behalf of CodeRanch.