Что такое monkey patching
Python
Senior
Без компании
Что такое monkey patching
Ответы
Monkey patching — это динамическое изменение поведения кода во время выполнения программы путем модификации классов или модулей. Это мощный, но потенциально опасный прием, так как может привести к неожиданным побочным эффектам.
```
class Original:
def method(self):
return "Original"
def patched_method(self):
return "Patched"
# Monkey patching
Original.method = patched_method
obj = Original()
print(obj.method()) # Выведет "Patched"
```
**Плюсы:**
- Быстрое исправление багов без изменения исходного кода
- Добавление функциональности в сторонние библиотеки
**Минусы:**
- Усложняет отладку
- Может сломать другие части кода
- Ухудшает читаемость
Используйте осторожно, преимущественно для тестирования (например, моки в pytest) или временных решений.