Rating: - Average
I bought this book hoping it would clarify some of the issues I have with TDD, but not so. Granted the book does a decent job explaining what TDD is, but the level of coverage and detailed explanations aren't good.
Rating: - You can't judge a book by its cover
When picking up this book for the first time, I expected to be submersed in the concepts of test driven development with some specific Microsoft .Net principles here and there.
Instead, the book presented a brief conceptual look at TDD, which was a good start. Then, the authors dove into how to develop a very extensive music system using SQLServer and .Net data access objects, sporadically sprinkled with unit tests.
If the reader wanted to learn how to build a complicated database driven system, the reader would buy a SQLServer book. The concepts needed to demonstrate the principles of TDD with .NET could have been much more clearly demonstrated with a much simpler example. Perhaps, fewer tables in the schema and more tests.
Even more frustrating was the way that the authors violated one of the key principles of TDD outlined in the first few chapters: Red, Green, Refactor. Consistently, the authors would implement a piece of functionality in the example and then go back and write a test for it. My colleagues and I have been using TDD for about a year and learned from experience that writing code before a test is difficult, pointless, and contradictory.
I recommend "Test-Driven Development: By Example" by Kent Beck for a more true conceptual explanation of TDD. The examples are in Java but it is simple enough to translate to C# without a problem.
After reading the Beck book, the documentation for NUnit and Fit (the technologies discussed in the book) is much more helpful if the reader wants to learn how to use the specific technology.
Rating: - eXtreme Programming reaches .NET
This is the first XP related book that uses .NET I know.
If you have tried to create an Architecture using ADO.NET for data access, and ASP.NET WebServices. You will see a very good one using the patterns described in Fowler's PEAA, but the best thing is that you don't see the whole picture until page 151 !! that's TDD.
And if you are trying to use TDD and automated tools to drive your development efforts this book will be unvaluable. The design of NUNit Tests it's great, and the introduction of different tools like fit.c2 to drive customer tests it's the definitive feature to involve customers in XP management.
Hope everyone enjoy it as me
Rating: - Practical How-To
Great hands on tutorial for unit (NUnit) and user testing (fit.c2). The authors provide practical advice on how to refactor software, as well as, code ala Test-Driven Development.
FYI, the demonstrations are written in C# with some very "real" senarios.
|