ПАТТЕРН КОМПОНОВЩИК PHP
Паттерн компоновщик (Composite) в PHP позволяет объединять объекты в древовидную структуру, а затем работать с этой структурой так, как будто это один единственный объект. Компоновщик очень удобен, когда надо реализовать древовидный объект (как, например, меню веб-сайта).
Для примера, рассмотрим реализацию компоновщика для меню сайта:
$menu = new MenuItem("О компании", "/about");$subMenu = new MenuItem("Контакты", "/contacts");$menu->add($subMenu);$subSubMenu = new MenuItem("Телефон", "/phone");$subMenu->add($subSubMenu);$subSubMenu = new MenuItem("Email", "/email");$subMenu->add($subSubMenu);$menu->render();
В данном примере создается меню, которое соединяет в себе элементы О компании и Контакты, а Контакты соединяет в себе элементы Телефон и Email. Метод render() автоматически пройдет по всем элементам меню и сгенерирует HTML код. Если добавить новый пункт меню, не придется переписывать код, так как все действия уже определены в реализации компоновщика.
JavaScript Паттерны #10 - Composite (Компоновщик)
Компоновщик (Composite) ► Шаблон проектирования ► Урок №19
Шаблон проектирования \
Factory Method(Фабричный метод) - Паттерны проектирования PHP
Decorator(Декоратор) - Паттерны проектирования PHP
Урок 1. Паттерны проектирования. Singletone
Паттерн Фабрика на реальном примере в PHP
Шаблоны проектирования: Мост