diff --git a/README.md b/README.md index 4be1308..182984d 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,8 @@ Паттерн "Стратегия" определяет семейство алгоритмов, инкапсулирует каждый из них и обеспечивает их взаимозаменяемость. Он позволяет модифицировать алгоритмы независимо от их использования на стороне клиента. -Каждая утка СОДЕРЖИТ экземпляры FlyBehavior и Quack­ Behavior, которым делегируются выполнение соответствующих операций. Подобные связи между двумя классами означают, что используется механизм композиции. Поведение не наследуется, а предоставляется правильно выбранным объектом. \ No newline at end of file +Каждая утка СОДЕРЖИТ экземпляры FlyBehavior и Quack­ Behavior, которым делегируются выполнение соответствующих операций. Подобные связи между двумя классами означают, что используется механизм композиции. Поведение не наследуется, а предоставляется правильно выбранным объектом. + +*Принципы:* +- Инкапсулировать то, что изменяется +- Отдавать предпочтение композиции перед наследованием +- Программировать на уровне интерфейсов, а не реализации \ No newline at end of file