Приспособленец (Flyweight) — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
(Назначение)
(Другое название)
Строка 1: Строка 1:
 
[[Страница_курса_Паттерны_проектирования| К основной странице курса]]
 
[[Страница_курса_Паттерны_проектирования| К основной странице курса]]
 
__NOTOC__
 
__NOTOC__
=== Другое название ===
 
 
=== Назначение ===
 
=== Назначение ===
 
Уменьшает количество объектов системы с многочисленными низкоуровневыми особенностями путем совместного использования подобных объектов.
 
Уменьшает количество объектов системы с многочисленными низкоуровневыми особенностями путем совместного использования подобных объектов.

Версия 10:18, 5 августа 2014

К основной странице курса

Назначение

Уменьшает количество объектов системы с многочисленными низкоуровневыми особенностями путем совместного использования подобных объектов.

Описание

Реализация

Диаграмма классов

FlyweightCommon.png

Участники

Пример

В графическом редакторе не надо хранить каждый символ в виде объекта. Достаточно хранить по одному объекту для каждого из используемых символов кодовой таблицы и в метод рисования передавать контекст рисования (например, строку-столбец). Таким образом, у каждого объекта есть внутреннее состояние (символ, который он представляет) и внешнее (строка-столбец), которое не хранится вместе с объектом, а передается ему как параметр в качестве внешнего контекста.

Код

Достоинства и недостатки

Варианты