This is a project with some basic implementations of design patterns in .net. It is meant to be a guide to the reasoning and insight to the popular design patterns
Design patterns are typical solutions to common problems in software design. Each pattern is like a blueprint that you can customize to solve a particular design problem in your code. They define a common language that helps your team communicate more efficiently.
All design patterns can be categorized by their intent, or purpose into three main groups of patterns:
- Creational patterns provide object creation mechanisms that increase flexibility and reuse of existing code.
- Structural patterns explain how to assemble objects and classes into larger structures, while keeping these structures flexible and efficient.
- Behavioral patterns take care of effective communication and the assignment of responsibilities between objects.
Structural Design Patterns
- Adapter Pattern
- Bridge Pattern
- Composite Pattern
- Decorator Pattern
- Facade Pattern
- Flyweight Pattern
- Proxy Pattern
Behavioural Design Patterns
- Chain of responsibility
- Command
- Iterator
- Mediator
- Memento
- Null Object
- Observer
- State
- Strategy
- Template method
- Visitor
Creational Desing Patterns
- Abstract Factory
- Builder
- Factory Method
- Object Pool
- Prototype
- Singleton