Comprehensive, pragmatic tutorial on Agile development for C# programmers from one of the founding fathers of Agile programming.
<b.Features
* Adapted from the Jolt Award winner Agile Software Development Principles, Patterns, and Practices
* Brings together principles of object oriented design, design patterns, UML and software best practices
* Uses real-world case studies to show how to plan, test, and refractor
Table Of Contants
Agile Development
* Agile Practices
* Overview of Extreme Programming
* Planning
* Testing
* Refactoring
* A Programming Episode
Agile Design
* What Is Agile Design?
* The Single-Responsibility Principle (SRP)
* The Open/Closed Principle (OCP)
* The Liskov Substitution Principle (LSP)
* The Dependency-Inversion Principle (DIP)
* The Interface Segregation Principle (ISP)
* Overview of UML for C# Programmers
* Working with Diagrams
* State Diagrams
* Object Diagrams
* Use Cases
* Sequence Diagrams
* Class Diagrams
* Heuristics and Coffee
The Payroll Case Study
Command and Active Object: Versatility and Multitasking
* Template Method and Strategy: Inheritance versus Delegation
* Facade and Mediator
* Singleton and Monostate
* Null Object
* The Payroll Case Study: Iteration 1
* The Payroll Case Study: Implementation
Packaging the Payroll System
* Principles of Package and Component Design
* Factory
* The Payroll Case Study: Package Analysis
* Composite
* Observer: Evolving into a Pattern
* Abstract Server, Adapter, and Bridge
* Proxy and Gateway: Managing Third-Party APIs 507
* Visitor
* State
* The Payroll Case Study: The Database
* The Payroll User Interface: Model View Presenter