Behavioral Patterns
Kind: category
Record: architecture-category:behavioral-patterns
Canonical: Ontology
The Behavioral Patterns category holds 13 architecture principles.
Listed in Principle categories, after Observability / Auditability / Traceability and before Creational Patterns.
Principle
- Strategy Pattern
- Template Method Pattern
- Observer Pattern
- Mediator Pattern
- Command Pattern
- State Pattern
- Chain of Responsibility Pattern
- Iterator Pattern
- Visitor Pattern
- Memento Pattern
- Null Object Pattern
- Finite State Machine
- Statecharts
Layer
Linked from
Behavioral Patterns
Every principle in this category is listed as a record. Each record carries its kind, its severity, the scopes it applies at and the layer it lives in, then the edge relations that join it to other records, the records that point back at it, the contracts that answer to it and the tensions it takes part in. The descriptors say how it is violated, detected, measured, repaired and enforced. Where the record carries one, an exemplar shows the shape before and after the principle is applied.
Relations diagram
flowchart LR
n_strategy_pattern["Strategy Pattern"]
n_template_method_pattern["Template Method Pattern"]
n_observer_pattern["Observer Pattern"]
n_mediator_pattern["Mediator Pattern"]
n_command_pattern["Command Pattern"]
n_state_pattern["State Pattern"]
n_chain_of_responsibility_pattern["Chain of Responsibility Pattern"]
n_iterator_pattern["Iterator Pattern"]
n_visitor_pattern["Visitor Pattern"]
n_memento_pattern["Memento Pattern"]
n_null_object_pattern["Null Object Pattern"]
n_finite_state_machine["Finite State Machine"]
n_statecharts["Statecharts"]
n_finite_state_machine --> n_state_pattern
n_statecharts --> n_finite_state_machine
n_statecharts --> n_finite_state_machineStrategy Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: recommended
- Scope: algorithm, policy, behavior
- Aliases: Policy Pattern
- Layer: Design Patterns Core
Template Method Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: contextual
- Scope: workflow, framework
- Layer: Design Patterns Core
Observer Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: recommended
- Scope: event notification, runtime
- Layer: Design Patterns Core
Mediator Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: contextual
- Scope: object coordination, module
- Layer: Design Patterns Core
Command Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: recommended
- Scope: behavior, invocation, workflow
- Aliases: Action Pattern
- Layer: Design Patterns Core
State Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: recommended
- Scope: behavior, state machine, lifecycle
- Layer: Design Patterns Core
Chain of Responsibility Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: recommended
- Scope: behavior, request handling, pipeline
- Layer: Design Patterns Core
Iterator Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: contextual
- Scope: behavior, traversal, collection
- Aliases: Cursor
- Layer: Design Patterns Core
Visitor Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: contextual
- Scope: behavior, operation, type hierarchy
- Layer: Design Patterns Core
Memento Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: contextual
- Scope: behavior, state capture, history
- Layer: Design Patterns Core
Null Object Pattern
- Kind: pattern
- Category: Behavioral Patterns
- Severity: contextual
- Scope: behavior, absence, default
- Aliases: Null Object
- Layer: Design Patterns Core
Finite State Machine
- Kind: model
- Category: Behavioral Patterns
- Severity: recommended
- Scope: behavior, state modeling, control flow
- Aliases: FSM, State Machine
- Layer: Design Patterns Core
Statecharts
- Kind: model
- Category: Behavioral Patterns
- Severity: contextual
- Scope: behavior, state modeling, hierarchy
- Layer: Design Patterns Core