This is probably the best Xmas gift that I got over the holidays even though it wasn’t intended to be. I was over at a friends house on Xmas eve and saw this book lying around. Considering I’ve spent the last 4 months working on a project that employs SCRUM, TDD, and SCSF along with various patterns such as MVP, Proxy etc, I couldn’t help but sneak a peek. Five minutes of flipping through the pages and I was hooked. Wow…what a read!
If you ever wanted to know what this whole ‘Agile’ thingy is and why I need to know about it…read this book. The book builds on real-world development issues and explains why Agile development is a better alternative to traditional methodologies. It then leads to how Test Driven Development plays a vital role in Agile development and dives into the concept of mock objects. Finally, it makes a great case for patterns (when to use them and when not to), and provides an excellent introduction to some of the more common patterns including MVP, Inversion Of Control, Dependency Injection, Facade, Proxy, Command, Data Gateway, Repository, and many others. Unlike other books, each section starts off by a scenario faced by a developer and how most programmers would tackle it. It then introduces the pattern and shows how it’s usage results in a superior solution.
So if you intend to read one book over the next year… make it this one!