Monkey-Patch

Cet article est une ébauche concernant l’informatique.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

Un Monkey-Patch (aussi écrit Monkey Patch, MonkeyPatch) traduit par modification-singe consiste en la modification ou l'extension sans toucher au code source original. Cela est possible dans les langages de programmation dynamiques. Cela peut être appliqué à la modification des logiciels de base d'un système si ce système autorise la gestion de paquets.

La notion se nomme aussi :

Étymologie

Il s'agissait à l'origine de modification dynamique et furtive de code au moment de son exécution, cela sans sécurité, par des bouts de code extérieurs. Dans certaines applications (comme Zope 2), ces bouts de code interagissent les uns avec les autres avec pour conséquence de créer une compétition à qui modifiera réellement le code. Dans le contexte originel donc, plusieurs bouts de codes entraient en compétition pour la modification du code original, d'où la notion de guérilla et l'utilisation du terme Guerilla Patch.

Mais le côté dangereux de la modification dynamique et le fait que ces codes constituent une menace pour un système, a entraîné l'utilisation fautive du terme Gorilla Patch, du fait de la similarité de consonance entre guerilla (guérilla) et gorilla (gorille) et de la connotation de gorille avec menace.

Les tenants des aspects positifs possibles de la modification dynamique de code, afin de diminuer la connotation de menace, ont commencé à utiliser le terme Monkey-Patch (singe au lieu de gorille) qui est resté le seul en usage.

Applications

La modification-singe est utilisée pour :

Pièges

L'utilisation de la modification-singe comporte les problèmes suivants :

Articles connexes