2. Why do we want to use design patterns? (*)
Template Method
Behavioural Design Patterns
Bridge
Structural Design Patterns
Factory
Creational Design Patterns
Chain of Responsibility (*)
Behavioural Design Patterns
Module
Architectural Design Patterns
2. Our (the authors’) belief is that there isn’t a strict situation/way to implement this pattern, due to the vague definition of it (and the fact that some languages don’t support the creation of modules at all). In a sense, it comes down to semantics and if this is even a design pattern. One interpretation is that it's only a Module Pattern if there is a class which represents the “module” (i.e. a class that encompasses/’gathers’ behavior defined in several patterns).
Strategy
Behavioural Design Patterns
Decorator (*)
Structural Design Patterns
1- When applied, the Decorator pattern enables an object to be “decorated” (wrapped) by another object, thus adding, but not changing the base, functionality of the object.
Observer
Behavioural Design Patterns
Facade
Structural Design Patterns
State
Behavioural Design Patterns
Adapter
Structural Design Patterns
Model-View-Controller
Architectural Design Patterns