This project was created to refine my knowledge of design patterns. It is based on the Design Pattern Library found on Pluralsight.
Adapters can abstract a make collection non-conforming classes confirm to a common abstraction. Can also be a type of wrapper.
Example:
- ADO .NET
- IDataAdapter
- OdbcDataAdapter
- OleDbDataAdapter
- SqlClientDataAdapter
- IDataAdapter
A way to connect two abstractions so that the concrete implementations are connected but can be extended independently. Two abstract classes, where one composes of the other. "Decouple an abstraction from its implementation so the two can vary independently." (GOF)
Separates the construction of a complex object from its representation so that the same construction process can create different representations. Useful when the order of the method calls to build the object is important.
Like a linked list of nodes that propagates a method call until one of the nodes can handles it. Always call the head method and one of the nodes will return the handled result via the chain.