
Перед прочтением ознакомьтесь с введением в паттерны проектирования на PHP, в котором описаны принятые соглашения и
понятия. Данная статья дополняется с некоторой периодичностью, так что если вы ее читали ранее, не факт что данные не
изменились.
Цепочка обязанностей (Chain of Responsibility) относится к классу поведенческих паттернов.
Служит для ослабления связи между отправителем и получателем запроса. При этом сам по себе запрос может быть произвольным.
Паттерн не просто так называется цепочкой обязанностей. По сути это набор обработчиков, которые по очереди получают
запрос, а затем решают обрабатывать его или нет. Если запрос не обработан, то он передается дальше по цепочке. Если
же он обработан, то паттерн сам решает передавать его дальше или нет.
Читать дальше

Перед прочтением ознакомьтесь с введением в паттерны проектирования на PHP, в котором описаны принятые соглашения и
понятия. Данная статья дополняется с некоторой периодичностью, так что если вы ее читали ранее, не факт что данные не
изменились.
Команда (Command) относится к классу поведенческих паттернов.
Команда представляет собой некоторое действие и его параметры. Суть паттерна в том, чтобы отделить инициатора
и получателя команды.
Этот паттерн широко используется в C# и Java для обработки событий возникающих в форме (GUI). Так как на PHP никто не
занимается разработкой GUI приложений, то приводить подобный код я не стану. Но не стоит отчаиваться, в PHP он нашел
свое место.
Читать дальше

Перед прочтением ознакомьтесь с введением в паттерны проектирования на PHP, в котором описаны принятые соглашения и
понятия. Данная статья дополняется с некоторой периодичностью, так что если вы ее читали ранее, не факт что данные не
изменились.
Итератор (Iterator) относится к классу поведенческих паттернов.
Используется в составных объектах. Предоставляет доступ к своим внутренним полям не раскрывая их структуру.
Зачастую этот паттерн используется вместо массива объектов, чтобы не только предоставить доступ к элементам, но и наделить некоторой логикой.
Это может быть ограничение доступа, сортировка или любая другая операция над множеством объектов.
На этом применение паттерна не ограничивается, иногда его удобно использовать для создания своеобразного бесконечного конвейера.
Правда с приходом PHP 5.5 на это место придут генераторы
Читать дальше