Patterns, And Practices In C#... - Agile Principles,
Patterns provide "blueprints" for solving recurring problems in an Agile way.
Defines a family of algorithms. In C#, this is often implemented by passing different interface implementations (e.g., IPaymentStrategy ) into a service at runtime. Agile principles, patterns, and practices in C#...
Software entities should be open for extension but closed for modification. Use abstract classes and interfaces to allow new behavior without breaking existing code. Agile principles, patterns, and practices in C#...