Компоновщик () — структурный шаблон проектирования, объединяющий объекты в древовидную структуру для представления иерархии от частного к целому. Компоновщик позволяет клиентам обращаться к отдельным объектам и к группам объектов одинаково.
Цель Паттерн определяет иерархию классов, которые одновременно могут состоять из примитивных и сложных объектов, упрощает архитектуру клиента, делает процесс добавления новых видов объекта более простым.
Описание UML-диаграмма шаблона:
Примеры реализации
Пример на Java
Пример на C#
Пример на C++
Пример на D
Пример на Python
Пример на PHP5
Пример компоновщика с внешним итератором на PHP5
Пример на PHP5.4
Пример на CoffeeScript
Пример на VB.NET
Пример на Delphi
Пример на JavaScript
Пример на Swift
Ссылки Паттерн Composite (Компоновщик) — назначение, описание, реализация на C++, достоинства и недостатки
Категория:Шаблоны проектирования Категория:Структурные шаблоны проектирования