Structural Patterns
Structural Patterns show how to arrange classes like building blocks, wrapping or linking them neatly so you can reuse code without rewriting it.
Adapter Pattern: Power Plug Adapter
Explains the Adapter Pattern in C# using a power plug analogy to show how to bridge incompatible interfaces.
Bridge Pattern: TV Remote and TVs
Explains the Bridge Pattern in C# using a universal TV remote analogy to show how abstraction and implementation can evolve separately.
Composite Pattern: Folders and Files
Explains the Composite Pattern in C# using folders and files, showing how to treat individual and grouped objects the same way.
Decorator Pattern: Gift Wrapping
Explains the Decorator Pattern in C# using the gift wrapping analogy, showing how to add behaviour without changing the original object.
Facade Pattern: Smart Home App
Explains the Facade Pattern in C# using a smart home app analogy to show how to simplify access to complex subsystems.
Flyweight Pattern: Airline Seat Map
Explains the Flyweight Pattern in C# using airline seats to show how objects can be reused efficiently by separating shared and unique data.
Proxy Pattern: Proxy Server
Explains the Proxy Pattern in C# using the proxy server analogy, showing how to add control and behaviour without modifying the original object.