Strategy
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
Стратегия — это поведенческий паттерн, выносит набор алгоритмов в собственные классы и делает их взаимозаменимыми. Другие объекты содержат ссылку на объект-стратегию и делегируют ей работу. Программа может подменить этот объект другим, если требуется иной способ решения задачи. В данном примере Стратегии реализуют классы: OppositeHuman OppositeOrcs OppositeUndead Имплементирующие интерфейс IDefenceStrategy В зависимости от выбора пользователя в методе Main Выбирается стратегия защиты NightElfBase с помощью ее метода enemyDetected() И ссылке IDefenceStrategy присваивается конкретный тип стратегии