Стратегия (шаблон проектирования): различия между версиями

[непроверенная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
→‎Примеры: пример на java
м орфо, replaced: путем → путём
Строка 12:
* отказ от использования переключателей и/или условных операторов.
| минусы = создание дополнительных классов
| родственные_шаблоны = [[Мост (шаблон проектирования)|Мост]], [[Шаблонный метод (шаблон проектирования)|Шаблонный метод]], [[Адаптер_Адаптер (шаблон_проектированияшаблон проектирования)|Адаптер]]
| design_patterns = Да
}}
 
'''Стратегия''' ({{lang-en|Strategy}}) — [[Поведенческие шаблоны проектирования|поведенческий]] [[шаблон проектирования]], предназначенный для определения семейства [[алгоритм]]ов, [[Инкапсуляция (программирование)|инкапсуляции]] каждого из них и обеспечения их взаимозаменяемости. Это позволяет выбирать алгоритм путемпутём определения соответствующего класса. Шаблон Strategy позволяет менять выбранный алгоритм независимо от [[Объект (программирование)|объектов]]-клиентов, которые его используют.
 
== Основные характеристики ==
Строка 145:
}}
 
'''Пример на [[C++ |C++]]'''
{{Hider|
title = '''Пример реализации''' |
Строка 362:
}}
 
'''Примеры на [[D (язык_программированияязык программирования)|D]]'''
{{Hider|
title = '''Пример реализации''' |
Строка 611:
return $url;
}
}
 
if (strstr($_SERVER["HTTP_USER_AGENT"], "Win"))