This repository has been archived on 2022-11-09. You can view files and clone it, but cannot push or open issues or pull requests.
patterns-old/README.md

8 lines
1.2 KiB
Markdown
Raw Permalink Normal View History

2021-10-17 23:45:29 +00:00
Паттерн "Стратегия" определяет семейство алгоритмов, инкапсулирует каждый из них и обеспечивает их взаимозаменяемость. Он позволяет модифицировать алгоритмы независимо от их использования на стороне клиента.
2021-10-29 21:52:40 +00:00
Каждая утка СОДЕРЖИТ экземпляры FlyBehavior и Quack­ Behavior, которым делегируются выполнение соответствующих операций. Подобные связи между двумя классами означают, что используется механизм композиции. Поведение не наследуется, а предоставляется правильно выбранным объектом.
*Принципы:*
- Инкапсулировать то, что изменяется
- Отдавать предпочтение композиции перед наследованием
- Программировать на уровне интерфейсов, а не реализации