Русская Википедия:Компоновщик (шаблон проектирования)

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Шаблон проектирования

Компоновщик (Шаблон:Lang-en) — структурный шаблон проектирования, объединяющий объекты в древовидную структуру для представления иерархии от частного к целому. Компоновщик позволяет клиентам обращаться к отдельным объектам и к группам объектов одинаково.

Цель

Паттерн определяет иерархию классов, которые одновременно могут состоять из примитивных и сложных объектов, упрощает архитектуру клиента, делает процесс добавления новых видов объекта более простым.

Описание

UML-диаграмма шаблона:

Файл:Composite UML class diagram (fixed).svg

Примеры реализации

Пример на Java

Шаблон:Hider hiding

Пример на C#

Шаблон:Hider hiding

Пример на C++

Шаблон:Hider hiding

Пример на D

Шаблон:Hider hiding

Пример на Python

Шаблон:Hider hiding

Пример на PHP5

Шаблон:Hider hiding

Пример компоновщика с внешним итератором на PHP5

Шаблон:Hider hiding

Пример на PHP5.4

Шаблон:Hider hiding

Пример на CoffeeScript

Шаблон:Hider hiding

Пример на VB.NET

Шаблон:Hider hiding

Пример на Delphi

Шаблон:Hider hiding

Пример на JavaScript

Шаблон:Hider hiding

Пример на Swift

Шаблон:Hider hiding

Ссылки

Шаблон:Типы шаблонов проектирования