Monkey Patching
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.