With the award-winning book Agile Software Development: Principles, Patterns, and Practices, Robert C. Martin helped bring Agile principles to tens of thousands of Java and C++ programmers. Now .NET programmers have a definitive guide to agile methods with this completely updated volume from Robert C. Martin and Micah Martin, Agile Principles, Patterns, and Practices in C#.
This book presents a series of case studies illustrating the fundamentals of Agile development and Agile design, and moves quickly from UML models to real C# code. The introductory chapters lay out the basics of the agile movement, while the later chapters show proven techniques in action. The book includes many source code examples that are also available for download from the authors’ Web site.
Readers will come away from this book understanding
- Agile principles, and the fourteen practices of Extreme Programming
- Spiking, splitting, velocity, and planning iterations and releases
- Test-driven development, test-first design, and acceptance testing
- Refactoring with unit testing
- Pair programming
- Agile design and design smells
- The five types of UML diagrams and how to use them effectively
- Object-oriented package design and design patterns
- How to put all of it together for a real-world project
Whether you are a C# programmer or a Visual Basic or Java programmer learning C#, a software development manager, or a business analyst, Agile Principles, Patterns, and Practices in C# is the first book you should read to understand agile software and how it applies to programming in the .NET Framework.
|Series:||Robert C. Martin Series|
|Sold by:||Barnes & Noble|
|File size:||8 MB|
About the Author
Robert C. Martin has been a software professional since 1970 and an international software consultant since 1990. He is founder and president of Object Mentor, Inc., a team of experienced consultants who mentor their clients in the fields of C++, Java, OO, Patterns, UML, Agile Methodologies, and Extreme Programming.
Micah Martin works with Object Mentor as a developer, consultant, and mentor on topics ranging from object-oriented principles and patterns to agile software development practices. Micah is the cocreator and lead developer of the open source FitNesse project. He is also a published author and speaks regularly at conferences.
Most Helpful Customer Reviews
One of the few tech books I have read from cover-to-cover. The book explains Agile principles from a reality perspective. I really enjoyed reading someone who understood that getting the code done (and done well) is the most important task versus producing mounds of paperwork.
In one sense, the book covers no new ground. The Agile principles and patterns discussed here have been well explained for two other languages, Java and C++, especially by Robert Martin in an earlier book. What is offered here is a recasting in terms of C#. Which however has far fewer practitioners than the other languages. Some sections of the book are mostly independent of any language. Take the chapter on state diagrams for documenting finite state machines as one example. Or the other chapters on object diagrams, use cases, sequence diagrams and class diagrams. Some of these do have example code in C#. But inherently, they tend to stand above any language. Some principles are quite useful, albeit perhaps to an advanced programmer. A good example is the chapter on Interface Segregation Principle. Basically, it's about how an interface can grow, if there are several child classes that implement it. The problem is when some classes need routines added to the interface, that other classes do not. So we get a fat interface. This creates a cross-coupling that is unneeded, and a potential source of errors. Something that you should try to minimise, for long term robustness and ease of code maintenance.