 
  
class
-  template method -- the skeleton of an algorithm
-  interpreter -- to evaluate expressions
object  
composition
-  mediator -- provides indirection for loose coupling
-  chain of responsibility -- connect objects to interact
-  observer -- to handle dependencies
