Встречается на собеседованиях • сегодня

В каких ситуациях применяется monkey patching

Monkey patching — это динамическое изменение поведения кода во время выполнения (обычно классов или модулей). Применяется в следующих случаях:

  1. Тестирование — подмена зависимостей для изоляции тестов (например, мокирование API-запросов).
  2. Исправление багов — временные фиксы в сторонних библиотеках без ожидания официального обновления.
  3. Расширение функционала — добавление методов в существующие классы (например, в Django).

Пример:

python
import requests

def mock_get(*args, **kwargs):
    return "Mocked response"

# Подмена метода requests.get
requests.get = mock_get

print(requests.get("https://api.example.com"))  # Выведет: "Mocked response"

Осторожно:

  • Усложняет отладку.
  • Может вызвать конфликты в многопоточной среде.
  • Ломает инкапсуляцию.

Используйте только там, где нет чистых альтернатив (например, dependency injection).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы