Summary Flashcards
Strategy
Encapsulates interchangeable behaviors and uses delegation to decide which one to use.
Adapter
Changes the interface of one or more classes.
Iterator
Provides a way to traverse a collection of objects without exposing the collection’s implementation.
Facade
Simplifies the interface of a group of classes.
Composite
Clients treat collection of objects and individual objects uniformly.
Observer
Allows a group of objects to be notified when some state changes.
Decorator
Wraps an object to provide new behavior.
State
Encapsulates state-based behaviors and uses delegation to switch between behaviors.
Proxy
Wraps an object to control access to it.
Factory
Subclasses decide which concrete classes to create.
Template Method
Subclasses decide how to implement steps in an algorithm.
Singleton
Ensures one and only one object is created.
Abstract Factory
Allows a client to create families of objects without specifying their concrete classes.
Command
Encapsulates a request as an object.