Erich Gamma

Author

Erich Gamma (born 1961 in Zürich) is a Swiss computer scientist and co-author of the influential software engineering textbook, Design Patterns: Elements of Reusable Object-Oriented Software. He co-wrote the JUnit software testing framework with Kent Beck and led the design of the Eclipse platform's Java Development Tools (JDT).
Books

Patterns

Strategy

Behavioral Pattern

The strategy pattern is used to create an interchangeable family of algorithms from which the required process is chosen at run-time.

Template Method

Behavioral Pattern

The template method pattern is used to define the basic steps of an algorithm and allow the implementation of the individual steps to be changed.

Visitor

Behavioral Pattern

The visitor pattern is used to separate a relatively complex set of structured data classes from the functionality that may be performed upon the data that they hold.