Behavioral pattern
In-game article clicks load inline without leaving the challenge.
A behavioral pattern is a software design pattern for collaboration between objects.
Examples
Examples include:
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 objects encapsulate an action and its parameters.
Externalize the stack
Turn a recursive function into an iterative function that uses a stack
Implement a specialized computer language to rapidly solve a specific set of problems.
Iterators are used to access the elements of an aggregate object sequentially without exposing its underlying representation.
Provides a unified interface to a set of interfaces in a subsystem.
Provides the ability to restore an object to its previous state (rollback).
Acts as a default value of an object.
Defines a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automatically. The variant weak reference pattern decouples an observer from an observable to avoid memory leaks in environments without automatic weak references.
Communications are handled by multiple layers, which form an encapsulation hierarchy
A messaging pattern where senders (publishers) and receivers (subscribers) are decoupled via message topics and brokers. Commonly used in distributed systems, this pattern supports asynchronous, many-to-many communication.
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.
Recombinable business logic in a boolean fashion.
A clean way for an object to partially change its type at runtime.
Algorithms can be selected on the fly, using composition.
Describes the skeleton of a program; algorithms can be selected on the fly, using inheritance.
A way to separate an algorithm from an object.