fa
Feedback
Python | Вопросы собесов

Python | Вопросы собесов

رفتن به کانال در Telegram

Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @easyoffer_adv

نمایش بیشتر

📈 تحلیل کانال تلگرام Python | Вопросы собесов

کانال Python | Вопросы собесов (@python_easy_ru) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 12 746 مشترک است و جایگاه 9 552 را در دسته فناوری و برنامه‌ها و رتبه 50 471 را در منطقه روسيا دارد.

📊 شاخص‌های مخاطب و پویایی

از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 12 746 مشترک جذب کرده است.

بر اساس آخرین داده‌ها در تاریخ 15 سپتامبر, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -97 و در ۲۴ ساعت گذشته برابر 2 بوده و همچنان دسترسی گسترده‌ای حفظ شده است.

  • وضعیت تأیید: تأیید نشده
  • نرخ تعامل (ER): میانگین تعامل مخاطب 5.44% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 4.01% واکنش نسبت به کل مشترکان کسب می‌کند.
  • دسترسی پست‌ها: هر پست به طور میانگین 693 بازدید دریافت می‌کند. در اولین روز معمولاً 511 بازدید جمع‌آوری می‌شود.
  • واکنش‌ها و تعامل: مخاطبان به‌طور فعال حمایت می‌کنند؛ میانگین واکنش به هر پست 2 است.
  • علایق موضوعی: محتوا بر موضوعات کلیدی مانند ставь, модуль, строка, docker, alice تمرکز دارد.

📝 توضیح و سیاست محتوایی

نویسنده این فضا را محل بیان دیدگاه‌های شخصی توصیف می‌کند:
Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @easyoffer_adv

به لطف به‌روزرسانی‌های پرتکرار (آخرین داده در تاریخ 16 سپتامبر, 2026)، کانال همواره به‌روز و دارای دسترسی بالاست. تحلیل‌ها نشان می‌دهد مخاطبان به‌طور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامه‌ها تبدیل کرده‌اند.

12 746
مشترکین
+224 ساعت
-197 روز
-9730 روز
جذب مشترکین
سپتامبر '26
سپتامبر '26
+44
در 0 کانال‌ها
اوت '26
+87
در 0 کانال‌ها
Get PRO
ژوئیه '26
+71
در 0 کانال‌ها
Get PRO
ژوئن '26
+99
در 2 کانال‌ها
Get PRO
مه '26
+63
در 0 کانال‌ها
Get PRO
آوریل '26
+84
در 0 کانال‌ها
Get PRO
مارس '26
+106
در 0 کانال‌ها
Get PRO
فوریه '26
+132
در 0 کانال‌ها
Get PRO
ژانویه '26
+132
در 0 کانال‌ها
Get PRO
دسامبر '25
+110
در 0 کانال‌ها
Get PRO
نوامبر '25
+188
در 0 کانال‌ها
Get PRO
اکتبر '25
+127
در 0 کانال‌ها
Get PRO
سپتامبر '25
+120
در 0 کانال‌ها
Get PRO
اوت '25
+172
در 1 کانال‌ها
Get PRO
ژوئیه '25
+201
در 3 کانال‌ها
Get PRO
ژوئن '25
+297
در 2 کانال‌ها
Get PRO
مه '25
+280
در 3 کانال‌ها
Get PRO
آوریل '25
+262
در 0 کانال‌ها
Get PRO
مارس '25
+256
در 3 کانال‌ها
Get PRO
فوریه '25
+464
در 52 کانال‌ها
Get PRO
ژانویه '25
+450
در 53 کانال‌ها
Get PRO
دسامبر '24
+241
در 0 کانال‌ها
Get PRO
نوامبر '24
+277
در 1 کانال‌ها
Get PRO
اکتبر '24
+781
در 46 کانال‌ها
Get PRO
سپتامبر '24
+1 318
در 248 کانال‌ها
Get PRO
اوت '24
+274
در 1 کانال‌ها
Get PRO
ژوئیه '24
+511
در 54 کانال‌ها
Get PRO
ژوئن '24
+2 443
در 247 کانال‌ها
Get PRO
مه '24
+3 231
در 210 کانال‌ها
Get PRO
آوریل '24
+912
در 25 کانال‌ها
Get PRO
مارس '24
+1 064
در 25 کانال‌ها
Get PRO
فوریه '24
+2 040
در 38 کانال‌ها
Get PRO
ژانویه '24
+2 115
در 1 کانال‌ها
تاریخ
رشد مشترکین
اشارات
کانال‌ها
16 سپتامبر0
15 سپتامبر+4
14 سپتامبر+2
13 سپتامبر+3
12 سپتامبر+4
11 سپتامبر+4
10 سپتامبر+4
09 سپتامبر0
08 سپتامبر+1
07 سپتامبر+6
06 سپتامبر+2
05 سپتامبر+3
04 سپتامبر+1
03 سپتامبر+3
02 سپتامبر+4
01 سپتامبر+3
پست‌های کانال
Создание кроссплатформенного GUI на Rust ⚡Electron тяжёл, а Rust + Tauri дают лёгкое, быстрое и безопасное десктоп-приложение
Создание кроссплатформенного GUI на Rust ⚡Electron тяжёл, а Rust + Tauri дают лёгкое, быстрое и безопасное десктоп-приложение для Windows, macOS и Linux. Tauri берёт HTML/CSS/JS для интерфейса и мощь Rust для бэкенда. 📅 23 сентября в 20:00 на открытом вебинаре разберём полный цикл создания GUI на Rust с Tauri: организация проекта, логика на Rust и её связь с интерфейсом, работа с данными, безопасные системные вызовы через permissions и capabilities в Tauri 2, асинхронность, сборка, отладка и лучшие практики. 💻 Вебинар не для тех, кто ждёт «скопируй-вставь». Подойдёт фронтенд-разработчикам, программистам, интересующимся Rust, и энтузиастам, уставшим от Electron. ✅ После вебинара вы сможете создавать десктоп-приложения на Rust, связывать логику с UI, настраивать безопасность и собирать готовое приложение. Записаться #реклама 16+ otus.ru О рекламодателе

2
🤔 Как сделать package? Пакет в Python — это папка, содержащая файл __init__.py, который указывает, что она является модулем. Внутри пакета могут находиться другие модули или подпакеты. Это позволяет удобно структурировать код по функциональным блокам и импортировать нужные части. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
503
3
🤔 Что такое хешируемые типы данных? Это такие типы данных, которые имеют постоянное (неизменяемое) хеш-значение на протяжении всего времени их существования. Это означает, что их можно использовать в качестве ключей в словарях (dict) и элементов в множествах (set), так как они поддерживают вычисление хеша с помощью функции hash(). 🚩Как понять, что объект хешируемый? 🟠Объект должен быть неизменяемым если объект можно изменить после создания, его хеш тоже изменится, что нарушает работу структур данных (словари, множества). 🟠Должен реализовывать метод `__hash__()` который возвращает уникальный идентификатор объекта. 🚩Какие типы данных хешируемые? Числа (int, float, complex) print(hash(42)) # 42 print(hash(3.14)) # 322818021289917443 print(hash(1 + 2j)) # 8389048192121911274 Строки (str) print(hash("hello")) # Например, 5320385861927423548 Кортежи (tuple), если все их элементы тоже хешируемые: print(hash((1, 2, 3))) # 529344067295497451 Булевы значения (bool): print(hash(True)) # 1 print(hash(False)) # 0 🚩Какие типы НЕ хешируемые? Списки (list) hash([1, 2, 3]) # TypeError: unhashable type: 'list' Множества (set) hash({1, 2, 3}) # TypeError: unhashable type: 'set' Словари (dict) hash({"a": 1}) # TypeError: unhashable type: 'dict' 🚩Почему это важно? Хешируемые типы используются в словари (dict) и множества (set), так как они используют хеш-функцию для быстрого поиска данных. my_dict = { (1, 2, 3): "tuple_key" } # Работает, потому что кортеж неизменяемый my_set = { 42, "hello", (1, 2) } # Все элементы хешируемые Ставь 👍 и забирай 📚 Базу знаний
544
4
Регистрируйтесь на Yandex Scale 2026 Главная конференция Yandex Cloud. Узнайте о сервисах, которые меняют ваш бизнес. 4 офлай+5
Регистрируйтесь на Yandex Scale 2026 Главная конференция Yandex Cloud. Узнайте о сервисах, которые меняют ваш бизнес. 4 офлайн-трека (AI, Infra + DevTools, Data, Security), онлайн-трек Deep Tech, воркшопы по ИИ и интерактивы. Подробнее о программе читайте в карточках🗒 📅24 сентября 🚗Москва + 💻онлайн Участие бесплатное! Зарегистрироваться #реклама 16+ scale.yandex.cloud О рекламодателе
541
5
🤔 Что такое оконные функции? Оконные функции — это агрегатные функции, которые применяются к строкам в пределах окна, не группируя их. Например: сумма по группе, но каждая строка остаётся на месте. Работают вместе с OVER(), PARTITION BY, ORDER BY. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
620
6
Галерея квартир в центре Астрахани с видами на Волгу! 🏠 Представьте квартиру, в которую можно приезжать отдыхать, словно на
Галерея квартир в центре Астрахани с видами на Волгу! 🏠 Представьте квартиру, в которую можно приезжать отдыхать, словно на юг. Астрахань — именно такое место: тёплый климат, Волга, рыбалка мирового уровня, арбузы и особая культурная атмосфера. Идеальным выбором станет квартира в клубном доме «Федерация» на Комсомольской набережной — пространстве, где комфорт сочетается с эстетикой и современным искусством. — Гранд-лобби — Квартиры с террасами — Вид на Волгу — Двор-сад Для покупателей из других городов «Федерация» — это не только уютная точка притяжения на юге, но и инвестиция: спрос на премиальное жильё в Астрахани растёт, а цены стабильно укрепляются. Проект реализует RES DEVELOPMENT — девелопер полного цикла. ✅ Ответьте на пару вопросов — и получите подборку планировок с ценами и ипотечными решениями. Узнать больше Проектная декларация на сайте https://наш.дом.рф/. #реклама mrqz.me О рекламодателе
641
7
🤔 Как выбрать данные из двух таблиц без метода join()? В SQL можно объединять данные из двух таблиц без использования JOIN, используя альтернативные методы. 🚩Использование подзапросов (`SELECT` внутри `SELECT`) Подзапрос (subquery) позволяет выбрать данные из одной таблицы, используя данные из другой. Допустим, у нас есть две таблицы: employees (id, name, department_id) departments (id, name) SELECT name, (SELECT name FROM departments WHERE id = employees.department_id) AS department_name FROM employees; 🚩Использование `IN` или `EXISTS` Можно фильтровать данные из одной таблицы, проверяя наличие значений в другой. SELECT name FROM employees WHERE department_id IN (SELECT id FROM departments); 🚩Объединение данных через `UNION` Если таблицы имеют схожие колонки, можно объединить их с UNION. SELECT id, name, email FROM users_old UNION SELECT id, name, email FROM users_new; 🚩Использование `CROSS JOIN` через `WHERE` Хотя CROSS JOIN делает декартово произведение, его можно фильтровать WHERE, имитируя INNER JOIN. SELECT e.name, d.name AS department FROM employees e, departments d WHERE e.department_id = d.id; Ставь 👍 и забирай 📚 Базу знаний
556
8
Срочно требуются дизайнеры в FIGMA. Обучим с нуля. Онлайн-программа с наставником и чатом. Внимание! 80% практики. ✅По резуль
Срочно требуются дизайнеры в FIGMA. Обучим с нуля. Онлайн-программа с наставником и чатом. Внимание! 80% практики. ✅По результату обучения у вас будет портфолио из нескольких работ. ✅Сертификат о прохождении курса. ✅Возможность пройти полное обучение и получить карьерное сопровождение! Учитесь дизайну у профессионалов в Yudaev Shool. Переходи по кнопки: "Подробнее" и начинай свое обучение. Доступ 0 руб. Узнать больше #реклама 16+ yudaevschool24.online О рекламодателе
609
9
🤔 Какие основные HTTP методы знаешь? Основные методы: GET (получение данных), POST (отправка данных), PUT (обновление или создание), DELETE (удаление), PATCH (частичное обновление), HEAD, OPTIONS. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
643
10
Услуги дата-центра в Москве Размещение и аренда серверного оборудования в дата-центре. 👍 4 современных дата-центра в Москве.
Услуги дата-центра в Москве Размещение и аренда серверного оборудования в дата-центре. 👍 4 современных дата-центра в Москве. 👍 Лицензированный оператор связи. 👍 Индивидуальные конфигурации выделенных серверов под задачи клиента. 👍 Круглосуточная техническая поддержка в Телеграм, без ботов. Узнать цену #реклама 16+ itsoft.ru О рекламодателе
637
11
🤔 Как понять, какие виды тестов нужны именно сейчас? Выбор типа тестирования зависит от целей, стадии разработки и текущих проблем. Чтобы определить, какие тесты нужны, стоит ответить на вопросы: Что тестируем? (код, API, UI, производительность и т. д.) Какие риски? (где может сломаться, критичность ошибки) Какой этап разработки? (новый код, рефакторинг, релиз) 🚩Как определить нужные тесты прямо сейчас? 🟠Только написали новый код Нужны: Юнит-тесты Тестируем функции и классы отдельно. def add(a, b): return a + b def test_add(): assert add(2, 3) == 5 # ✅ Юнит-тест 🟠Соединяем модули или работаем с API Нужны: Интеграционные тесты Проверяем работу всей системы вместе. def test_api(): response = requests.get("https://api.example.com/data") assert response.status_code == 200 🟠Перед релизом или деплоем Нужны: Функциональные и регрессионные тесты Проверяем ключевые сценарии и старый функционал. def test_login(): assert login("user", "password") == "Success" 🟠Изменили UI (например, фронтенд на React) Нужны: UI-тесты (Selenium, Playwright) Проверяем нажатие кнопок, формы и отображение страниц. from selenium import webdriver driver = webdriver.Chrome() driver.get("https://example.com") assert "Example" in driver.title 🟠Если проект должен выдерживать большую нагрузку Нужны: Нагрузочные тесты (Load Testing) Используем locust, JMeter, k6, чтобы проверить сколько пользователей выдержит сервер. from locust import HttpUser, task class MyUser(HttpUser): @task def test_homepage(self): self.client.get("/") Ставь 👍 и забирай 📚 Базу знаний
582
12
Проводим розыгрыш в нашем боте 20 Яндекс Станций, 5 пар Яндекс Дропс и крутой мерч, который будет помогать создавать новое уж
Проводим розыгрыш в нашем боте 20 Яндекс Станций, 5 пар Яндекс Дропс и крутой мерч, который будет помогать создавать новое уже сегодня! Узнать больше #реклама 16+ refer.id О рекламодателе
512
13
🤔 Назови основные команды docker? Docker — это инструмент для создания, развертывания и управления контейнерами. Основные команды позволяют управлять образами, контейнерами, сетями и томами. 🚩Работа с образами (`images`) Образы — это "шаблоны" для создания контейнеров. Пример: скачиваем Python-образ docker pull python:3.11 🚩Работа с контейнерами (`containers`) Контейнер — это запущенный процесс на основе образа. Пример: запустить контейнер с Ubuntu и войти в него docker run -it ubuntu bash Пример: остановить и удалить контейнер docker stop my_app docker rm my_app 🚩Работа с томами (`volumes`) Том (volume) — это способ хранения данных, которые не пропадут при перезапуске контейнера. Пример: подключить том к контейнеру docker run -v my_data:/app/data ubuntu 🚩Работа с сетями (`networks`) Сети в Docker позволяют контейнерам взаимодействовать друг с другом. Пример: запустить два контейнера в одной сети docker network create my_network docker run -d --network my_network --name app1 ubuntu docker run -d --network my_network --name app2 ubuntu 🚩5. Docker Compose (`docker-compose.yml`) Docker Compose позволяет управлять несколькими контейнерами с помощью docker-compose.yml. Пример docker-compose.yml version: "3" services: app: image: python:3.11 volumes: - my_data:/app/data networks: - my_network volumes: my_data: networks: my_network: Запуск docker compose up -d Ставь 👍 и забирай 📚 Базу знаний
556
14
Скидки до 50% на посудомоечные машины Kuppersberg Посудомоечные машины Kuppersberg со скидками на Яндекс Маркете! Узнать боль
Скидки до 50% на посудомоечные машины Kuppersberg Посудомоечные машины Kuppersberg со скидками на Яндекс Маркете! Узнать больше #реклама market.yandex.ru О рекламодателе
496
15
🤔 Какие есть коллекции и их особенности по скорости работы и использованию памяти? В Python основные коллекции: списки, кортежи, множества, словари. - Списки: изменяемы, быстрые при доступе по индексу, но медленнее при вставке в середину. Используют больше памяти за счёт зарезервированного места для расширения. - Кортежи: неизменяемы, занимают меньше памяти, быстрее при доступе, хорошо подходят для фиксированных наборов данных. - Множества: обеспечивают быстрый поиск (как словари), но не сохраняют порядок. Используют хеши. - Словари: ассоциативные коллекции с быстрым доступом по ключу. Эффективны при поиске и обновлении. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
616
16
Ищем менеджеров нейросетей, можно без опыта Опыт не нужен. Только телефон. Занятость — 3-6 часов в день. Нужно выполнять зада
Ищем менеджеров нейросетей, можно без опыта Опыт не нужен. Только телефон. Занятость — 3-6 часов в день. Нужно выполнять задачи с помощью нейросетей. Все это вы делаете из дома. Всему обучим на бесплатном курсе и после поможем со стартом. Что вас ждет за 3 дня: ✅ Уроки с практикой по 30 минут ✅ Домашние задания с проверкой и оплатой бонусами ✅ Выплата за каждую выполненную работу 🎓 Все, кто пройдет обучение, получат сертификат от школы с образовательной лицензией. Набор закрывается, как только группа заполнится. Чтобы занять место нажмите "Зарегистрироваться". Зарегистрироваться #реклама 16+ course.neurogansta.ru О рекламодателе
538
17
🤔 Как избежать конфликтов при импорте файлов? Когда в проекте много файлов, могут возникать конфликты импортов. Python ищет модули в определённом порядке, и если несколько файлов имеют одинаковые имена или неправильные пути, может возникнуть ошибка. 🚩Способы избежать конфликтов при импорте 🟠Используйте явные пути импорта Вместо import mymodule # Может вызвать конфликт, если есть несколько файлов с таким именем Лучше указывать полный путь в пакетах from myproject.utils.mymodule import my_function 🟠Избегайте конфликтов имён файлов Если у вас есть файл math.py, импорт import math будет загружать ваш файл, а не стандартный модуль math из Python. - Не называйте файлы именами стандартных модулей: math.py, sys.py, json.py. - Проверьте, какой именно модуль загружается: import math print(math.__file__) # Путь к загруженному модулю 🟠Добавьте `__init__.py` в пакеты Если у вас есть структура /myproject /utils mymodule.py Решение Добавьте пустой __init__.py в utils/: /myproject /utils __init__.py # Делаем utils пакетом mymodule.py Теперь импорт будет работать from utils import mymodule 🟠Используйте `sys.path.append()` для указания путей Иногда Python не находит модуль, если он находится вне стандартных путей. Решение Добавьте путь вручную: import sys sys.path.append("/path/to/directory") import mymodule # Теперь импорт будет работать 🟠Используйте `absolute` и `relative` импорт в пакетах Абсолютный импорт (рекомендуется) from myproject.utils.mymodule import my_function Относительный импорт (используется внутри пакетов): from .mymodule import my_function 🟠Проверяйте `sys.modules` и `sys.path` Если импорт не работает, проверьте, какие модули загружены и где Python ищет файлы import sys print(sys.modules.keys()) # Список загруженных модулей print(sys.path) # Пути, где Python ищет модули Ставь 👍 и забирай 📚 Базу знаний
565
18
Ищу желающих заполнять карточки товаров на ВБ! Работа полностью на удаленке с зп от 3-5 тыс. рублей в день. Без опыта, нужен
Ищу желающих заполнять карточки товаров на ВБ! Работа полностью на удаленке с зп от 3-5 тыс. рублей в день. Без опыта, нужен только телефон, занятость 3-6 часов в день. Всему обучат на бесплатном курсе и после возьму на работу. Как проходят уроки: ✅ 3 дня уроков по 30 минут ✅ Домашки с проверкой и оплатой бонусами ✅ Плачу 10 тыс за каждую выполненную домашку Все кто пройдет курс, получат сертификат от школы с образовательной лицензией. ⚡ Места ограничены. Набор может закрыться в любой момент. 👍 Жмите "Зарегистрироваться", чтобы успеть занять место. Зарегистрироваться #реклама 16+ course.wildcard.ru О рекламодателе
566
19
🤔 Что такое переменная? Переменная — это имя, связанное с объектом в памяти. В Python переменные не имеют типа — тип привязан к значению. Они позволяют хранить и переиспользовать данные в программе. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
737
20
🤔 Что такое паттерн Стратегия (Strategy) ? Это поведенческий паттерн проектирования, который определяет семейство алгоритмов, инкапсулирует каждый из них и делает их взаимозаменяемыми. Паттерн "Стратегия" позволяет изменять алгоритмы независимо от клиентов, которые их используют. 🚩Зачем нужен данный паттерн? 🟠Изоляция алгоритмов Позволяет инкапсулировать различные алгоритмы и использовать их независимо. 🟠Упрощение кода Устраняет дублирование кода и упрощает классы, которые используют эти алгоритмы. 🟠Гибкость и расширяемость Легко добавлять новые алгоритмы или изменять существующие без изменения клиентского кода. 🚩Как работает данный паттерн? 🟠Стратегия (Strategy) Интерфейс, определяющий общий метод, который должны реализовать все алгоритмы. 🟠Конкретные стратегии (ConcreteStrategy) Реализации различных алгоритмов, которые реализуют интерфейс стратегии. 🟠Контекст (Context) Класс, использующий стратегию для выполнения задачи. from abc import ABC, abstractmethod # Интерфейс стратегии class Strategy(ABC): @abstractmethod def sort(self, data): pass # Конкретные стратегии class BubbleSortStrategy(Strategy): def sort(self, data): print("Sorting using Bubble Sort") for i in range(len(data)): for j in range(0, len(data)-i-1): if data[j] > data[j+1]: data[j], data[j+1] = data[j+1], data[j] class QuickSortStrategy(Strategy): def sort(self, data): print("Sorting using Quick Sort") self.quick_sort(data, 0, len(data) - 1) def quick_sort(self, data, low, high): if low < high: pi = self.partition(data, low, high) self.quick_sort(data, low, pi - 1) self.quick_sort(data, pi + 1, high) def partition(self, data, low, high): pivot = data[high] i = low - 1 for j in range(low, high): if data[j] <= pivot: i = i + 1 data[i], data[j] = data[j], data[i] data[i + 1], data[high] = data[high], data[i + 1] return i + 1 # Контекст class SortingContext: def __init__(self, strategy: Strategy): self._strategy = strategy def set_strategy(self, strategy: Strategy): self._strategy = strategy def sort(self, data): self._strategy.sort(data) # Клиентский код data = [5, 2, 9, 1, 5, 6] context = SortingContext(BubbleSortStrategy()) context.sort(data) print(data) # [1, 2, 5, 5, 6, 9] context.set_strategy(QuickSortStrategy()) data = [3, 7, 8, 5, 2, 1, 9, 5, 4] context.sort(data) print(data) # [1, 2, 3, 4, 5, 5, 7, 8, 9] 🚩Плюсы и минусы ➕Изоляция алгоритмов Алгоритмы инкапсулируются в отдельные классы, что упрощает их замену и добавление. ➕Упрощение кода Контекст использует стратегии, избегая громоздких условных операторов. ➕Гибкость и расширяемость Легко добавлять новые стратегии без изменения существующего кода. ➖Усложнение структуры кода Добавление множества классов стратегий может усложнить проект. ➖Контекст знает о стратегиях Контекст должен знать о всех возможных стратегиях, чтобы иметь возможность их переключать. 🚩Когда использовать данный паттерн? Когда есть несколько вариантов алгоритмов для выполнения задачи. Когда нужно динамически выбирать алгоритм во время выполнения. Когда необходимо избежать множества условных операторов для выбора алгоритма. Ставь 👍 и забирай 📚 Базу знаний
752