As every developer knows, requirements are subject to change. But when you build adaptability into your code, you can respond to change more easily and avoid disruptive rework. Focusing on Agile programming, this book describes the best practices, principles, and patterns that enable you to create flexible, adaptive code--and deliver better business value.

Features

Understand why composition is preferable to inheritance and how flexible the interface really can be

Gain deep knowledge of key design patterns and anti-patterns, when to apply them, and how to give their code agility

Bridge the gap between the theory behind SOLID principles, design patterns, and industry best practices by pragmatically solving real-world problems

Get code samples written in upcoming version of Microsoft Visual C#

Topics include: Agile with Scrum process; dependencies and layering; the interface; patterns and anti-patterns; introduction to SOLID principles, including open/closed and dependency interjection; and using application templates