IT-Lexikon › Programmierung › Monkey Patching

Monkey Patching

Programmierung Svenska → Aktualisiert: 2026-09-12

Klassen oder Module zur Laufzeit verändern — Methoden zu eingebauten Typen hinzufügen, Funktionen in Bibliotheken austauschen, Verhalten ändern, ohne den Quellcode anzufassen.

Verbreitet in Ruby (offene Klassen sind dort Standard), Python, JavaScript. Klassisches Ruby-Beispiel: class Integer; def lucky?; self == 7; end; end. Gängige Technik in Tests (requests.get mocken, datetime.now einfrieren) sowie zum Flicken von Bugs in Drittanbieter-Bibliotheken, die man nicht aktualisieren kann.

Risiko: Andere Entwickler sehen die Änderung nicht → „Warum liefert diese Methode plötzlich einen anderen Wert?" Best Practice: klar dokumentieren, auf Tests oder Initialisierung beschränken, in Produktionscode vermeiden.

← Zurück zum Lexikon