Statements (25)
| Predicate | Object | 
|---|---|
| gptkbp:instanceOf | gptkb:Design_Pattern | 
| gptkbp:advantage | can make it harder to restrict components can make the design overly general | 
| gptkbp:author | gptkb:Erich_Gamma gptkb:John_Vlissides gptkb:Richard_Helm gptkb:Ralph_Johnson | 
| gptkbp:benefit | makes it easier to add new kinds of components simplifies client code | 
| gptkbp:category | structural pattern | 
| gptkbp:definedIn | gptkb:Design_Patterns:_Elements_of_Reusable_Object-Oriented_Software | 
| gptkbp:example | file system directories and files graphics drawing editors | 
| gptkbp:participants | gptkb:Leaf gptkb:Component Composite | 
| gptkbp:purpose | treat individual objects and compositions uniformly compose objects into tree structures to represent part-whole hierarchies | 
| gptkbp:relatedTo | decorator pattern iterator pattern visitor pattern | 
| gptkbp:usedIn | object-oriented programming | 
| gptkbp:bfsParent | gptkb:xUnit_family | 
| gptkbp:bfsLayer | 7 | 
| https://www.w3.org/2000/01/rdf-schema#label | composite pattern |