Behavioral pattern
- 1 min read
- 1 chapter
Related on Lably
Through Recursion (computer science), Boolean algebra and Inheritance (object-oriented programming)
Design patterns
Examples of this type of design pattern include:
- Blackboard design pattern
- Provides a computational framework for the design and implementation of systems that integrate large and diverse specialized modules, and implement complex, non-deterministic control strategies
- Chain-of-responsibility pattern
- Command objects are handled or passed on to other objects by logic-containing processing objects
- Command pattern
- Command objects encapsulate an action and its parameters
- "Externalize the stack"
- Turn a recursive function into an iterative function that uses a stack
- Interpreter pattern
- Implement a specialized computer language to rapidly solve a specific set of problems
- Iterator pattern
- Iterators are used to access the elements of an aggregate object sequentially without exposing its underlying representation
- Mediator pattern
- Provides a unified interface to a set of interfaces in a subsystem
- Memento pattern
- Provides the ability to restore an object to its previous state (rollback)
- Null object pattern
- Designed to act as a default value of an object
- Observer pattern
- a.k.a. Publish/Subscribe or Event Listener. Objects register to observe an event that may be raised by another object
- Weak reference pattern
- De-couple an observer from an observable
- Protocol stack
- Communications are handled by multiple layers, which form an encapsulation hierarchy
- Scheduled-task pattern
- A task is scheduled to be performed at a particular interval or clock time (used in real-time computing)
- Single-serving visitor pattern
- Optimise the implementation of a visitor that is allocated, used only once, and then deleted
- Specification pattern
- Recombinable business logic in a boolean fashion
- State pattern
- A clean way for an object to partially change its type at runtime
- Strategy pattern
- Algorithms can be selected on the fly, using composition
- Template method pattern
- Describes the skeleton of a program; algorithms can be selected on the fly, using inheritance
- Visitor pattern
- A way to separate an algorithm from an object

