Interested Article - Компоновщик (шаблон проектирования)

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

Цель

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

Описание

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

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

Пример на Java

Пример на C#

Пример на C++

Пример на D

Пример на Python

Пример на PHP5

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

Пример на PHP5.4

Пример на CoffeeScript

Пример на VB.NET

Пример на Delphi

Пример на JavaScript

Пример на Swift

Ссылки

  • — назначение, описание, реализация на C++, достоинства и недостатки
Источник —

Same as Компоновщик (шаблон проектирования)