Define the skelton of an algorithm in an operation, deferring some steps to subclasses. It lets subclasses redefine certain steps of an algorithm without changing the algorithm structure.
Chain of responsibility
Template method
Interpreter
Mediator