Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| php:patterns [2022/05/11 10:50] – mirocow | php:patterns [2022/05/11 13:18] (текущий) – mirocow | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ====== Паттерны проектирования | + | {{tag> |
| - | ===== Шаблоны проектирования ===== | + | ====== Шаблоны проектирования |
| - | ===== Цепочка обязанностей / Chain of Responsibility | + | ==== Шаблоны проектирования ==== |
| + | |||
| + | ==== Цепочка обязанностей / Chain of Responsibility ==== | ||
| Позволяет передавать запросы последовательно по цепочке обработчиков. Каждый последующий обработчик решает, | Позволяет передавать запросы последовательно по цепочке обработчиков. Каждый последующий обработчик решает, | ||
| - | ===== Команда Команда / Command | + | ==== Команда Команда / Command ==== |
| Превращает запросы в объекты, | Превращает запросы в объекты, | ||
| - | ===== Итератор / Iterator | + | ==== Итератор / Iterator ==== |
| Даёт возможность последовательно обходить элементы составных объектов, | Даёт возможность последовательно обходить элементы составных объектов, | ||
| - | ===== Посредник / Mediator | + | ==== Посредник / Mediator ==== |
| Позволяет уменьшить связанность множества классов между собой, благодаря перемещению этих связей в один класс-посредник. | Позволяет уменьшить связанность множества классов между собой, благодаря перемещению этих связей в один класс-посредник. | ||
| - | ===== Снимок / Memento | + | ==== Снимок / Memento ==== |
| Позволяет сохранять и восстанавливать прошлые состояния объектов, | Позволяет сохранять и восстанавливать прошлые состояния объектов, | ||
| - | ===== Наблюдатель / Observer | + | ==== Наблюдатель / Observer ==== |
| Создаёт механизм подписки, | Создаёт механизм подписки, | ||
| - | ===== Состояние / State ===== | + | ==== Состояние / State ==== |
| Позволяет объектам менять поведение в зависимости от своего состояния. Извне создаётся впечатление, | Позволяет объектам менять поведение в зависимости от своего состояния. Извне создаётся впечатление, | ||
| - | ===== Стратегия / Strategy | + | ==== Стратегия / Strategy ==== |
| Определяет семейство схожих алгоритмов и помещает каждый из них в собственный класс, после чего алгоритмы можно взаимозаменять прямо во время исполнения программы. | Определяет семейство схожих алгоритмов и помещает каждый из них в собственный класс, после чего алгоритмы можно взаимозаменять прямо во время исполнения программы. | ||
| - | ===== Шаблонный метод / Template Method | + | ==== Шаблонный метод / Template Method ==== |
| Определяет скелет алгоритма, | Определяет скелет алгоритма, | ||
| - | ===== Посетитель / Visitor | + | ==== Посетитель / Visitor ==== |
| Позволяет добавлять в программу новые операции, | Позволяет добавлять в программу новые операции, | ||