This repository contains comprehensive structural and real-world examples of GoF (Gang of Four) design patterns implemented in the C# programming language. It serves as a quick reference, and I plan to continuously add more real-world examples in the future.
- Abstract Factory -- Creates an instance of several families of classes
- Builder -- Separates object construction from its representation
- Factory Method -- Creates an instance of several derived classes
- Prototype -- A fully initialized instance to be copied or cloned(Shallow or Deep Copy)
- Singleton -- A class of which only a single instance can exist
- Adapter --Match interfaces of different classes
- Bridge --Separates an object’s interface from its implementation
- Composite --A tree structure of simple and composite objects
- Decorator -- Add responsibilities to objects dynamically
- Facade -- A single class that represents an entire subsystem
- Flyweight -- A fine-grained instance used for efficient sharing
- Proxy -- An object representing another object
- Chain of Responsibility --A way of passing a request between a chain of objects
- Command--Encapsulate a command request as an object
- Interpreter--A way to include language elements in a program
- Iterator--Sequentially access the elements of a collection
- Mediator -- Defines simplified communication between classes
- Memento -- Capture and restore an object's internal state
- Observer-- A way of notifying change to a number of classes
- State -- Alter an object's behavior when its state changes
- Strategy -- Encapsulates an algorithm inside a class
- Template Method -- Defer the exact steps of an algorithm to a subclass
- Visitor -- Defines a new operation to a class without change