Читайте также:
|
|
Factory Method (фабричный метод) (111)
Определяет интерфейс для создания объектов, при этом выбранный класс инстанцируется подклассами.
Flyweight (приспособленец) (191)
Использует разделение для эффективной поддержки большого числа мелких объектов.
Interpreter (интерпретатор) (236)
Для заданного языка определяет представление его грамматики, а также интерпретатор предложений языка, использующий это представление.
Iterator (итератор) (173)
Дает возможность последовательно обойти все элементы составного объекта, не раскрывая его внутреннего представления.
Mediator (посредник) (263)
Определяет объект, в котором инкапсулировано знание о том, как взаимодействуют объекты из некоторого множества. Способствует уменьшению числа связей между объектами, позволяя им работать без явных ссылок друг на друга. Это, в свою очередь, дает возможность независимо изменять схему взаимодействия.
Memento (хранитель) (272)
Позволяет, не нарушая инкапсуляции, получить и сохранить во внешней памяти внутреннее состояние объекта, чтобы позже объект можно было восстановить точно в таком же состоянии.
Observer (наблюдатель) (281)
Определяет между объектами зависимость типа один-ко-многим, так что при изменении состоянии одного объекта все зависящие от него получают извещение и автоматически обновляются.
Prototype (прототип) (121)
Описывает виды создаваемых объектов с помощью прототипа и создает новые объекты путем его копирования.
Proxy (заместитель) (203)
Подменяет другой объект для контроля доступа к нему.
Singleton (одиночка) (130)
Гарантирует, что некоторый класс может иметь только один экземпляр, и предоставляет глобальную точку доступа к нему.
State (состояние) (291)
Позволяет объекту варьировать свое поведение при изменении внутреннего состояния. При этом создается впечатление, что поменялся класс объекта.
Strategy (стратегия) (300)
Определяет семейство алгоритмов, инкапсулируя их все и позволяя подставлять один вместо другого. Можно менять алгоритм независимо от клиента, который им пользуется.
Введение в паттерны проектирования
Template Method (шаблонный метод) (309)
Определяет скелет алгоритма, перекладывая ответственность за некоторые его шаги на подклассы. Позволяет подклассам переопределять шаги алгоритма, не меняя его общей структуры.
Visitor (посетитель) (314)
Представляет операцию, которую надо выполнить над элементами объекта. Позволяет определить новую операцию, не меняя классы элементов, к которым он применяется.
Дата добавления: 2015-09-11; просмотров: 73 | Поможем написать вашу работу | Нарушение авторских прав |