design_patterns:gof

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
design_patterns:gof [2017/02/19 15:47] – ↷ Seite von designpatterns:gof nach design_patterns:gof verschoben phreazerdesign_patterns:gof [2019/11/09 22:13] (current) – [Verhaltensmuster (behavioral patterns)] phreazer
Line 3: Line 3:
  
   * Class pattern   * Class pattern
-    * [[designpatterns:factorymethod|Factory Method / Virtual Constructor]]+    * [[design_patterns:factorymethod|Factory Method / Virtual Constructor]]: Object creation via method instead of constructor
   * Object pattern   * Object pattern
-    * [[designpatterns:builder|Builder pattern]]+    * [[design_patterns:builder|Builder pattern]] 
 +  * Abstract factory pattern: Group of factories 
 +  * Prototype pattern: Clone method/interface 
 +  * Singleton pattern 
 +  * Multiton pattern (flyweight): Multiple objects based on key (getInstance(key), using a hashmap)
 ===== Strukturmuster (structural patterns) ===== ===== Strukturmuster (structural patterns) =====
 +
 +Class/object composition
 +
 +  * Adapter/Wrapper: Adapter realizes interfaces, uses method of external class
 +  * Bridge: Hierarchy of abstractions and implementations
 +  * Facade: Unified, simplified interface to complex operations involving multiple classes
 +  * Decorator: Dynamically add/remove methods to an object
 +  * Flyweight: Large number of object required, where information is shared
 +  * Composite: Tree-structure to represent part-whole hierarchies (treat part and whole uniformly)
 +  * Proxy: Class acting as interface to something else.
 ===== Verhaltensmuster (behavioral patterns) ===== ===== Verhaltensmuster (behavioral patterns) =====
  
 +  * Template method: Abstract class which implements invariant code and helper method, while specific implementations are in derived classes
 +  * Strategy: Defines interface for a method and concrete implementations. Strategies could be choosen on runtime.
 +  * Iterator: Access of elements in container without exposing underlying representation
 +  * Interpreter: Using Composite e.g. with Terminal/NonTerminal class representations e.g. to implement an abstract syntax tree
  • design_patterns/gof.1487515674.txt.gz
  • Last modified: 2017/02/19 15:47
  • by phreazer