MAXSITE.ORGКак сделать сайт своими руками

Шаблон Flyweight (Приспособленец)

07-11-2019Время чтения ~ 1 мин.PHP/ООП 7368

Приспособленец — структурный шаблон проектирования, который позволяет получать доступ к объектам предотвращая их повторное инстанцирование. Flyweight имеет смысл при работе с множеством мелких однотипных классов, к которым удобно обращаться через единую точку входа.

Исходный код я разместил на гитхабе.

Итак. Пусть у нас есть несколько однотипных классов (ClassA, ClassB, ClassC), которые выполняют какую-то свою работу. При желании можно реализовать их от общего интерфейса.

Когда классов много, то каждый из них не совсем удобно инстанцировать отдельно. Вместо этого создается класс FlyweightFactory: он сам создает объект, но делает это только один раз. При повторном вызове возвращается уже готовый объект. Такой алгоритм позволяет оптимизировать расход памяти программы.

Похожие записи
Оставьте комментарий!
Сайт использует cookie
Для улучшения работы сайта собирается анонимная статистика через Google Analytics. Разрешить использование аналитических cookie?