Structural pattern
≈ 1 min read
Names in other languages
No names in other languages are held for this entry yet.
Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.
A structural pattern is a software design pattern that encapsulates relationships between entities.
A structural pattern is a software design pattern that encapsulates relationships between entities. ==Examples== Examples include: Adapter pattern: Adapts one interface for a class into one that a client expects. Adapter pipeline: Use multiple adapters for debugging purposes. Retrofit Interface Pattern: An adapter used as a new interface for multiple classes at the same time. Aggregate pattern: A version of the Composite pattern with methods for aggregation of children. Bridge pattern: decouple an abstraction from its implementation so that the two can vary independently. Tombstone: An intermediate lookup object contains the real location of an object. Composite pattern: A tree structure of objects where every object has the same interface. Decorator pattern: Supports adding additional functionality to an object at runtime. Prevents issue where subclassing would result in an exponential rise of new classes. Extensibility pattern: a.k.a. framework, Hides complex code behind a simple interface. Facade pattern: Creates a simplified interface of an existing interface to ease usage for common tasks. Flyweight pattern: A large quantity of objects share a common properties object to save space. Marker interface pattern: An empty interface to associate metadata with a class. Pipes and filters: A chain of processes where the output of each process is the input of the next. Opaque pointer: A pointer to an undeclared or private type, to hide implementation details. Proxy pattern: A class functioning as an interface to another thing. ==See also== Behavioral pattern Concurrency pattern Creational pattern ==References==
Text derived from https://en.wikipedia.org/w/index.php?oldid=1327663846 under CC BY-SA 4.0; modifications have been made.