- Patch (Unix)
-
Patch (informatique)
Pour les articles homonymes, voir Patch.Un patch (terme anglais) est une section de code que l'on ajoute à un logiciel, pour y apporter des modifications : correction d'un bogue, traduction, crack.
Le terme officiel en français est retouche ou bien correctif (terme en français majoritairement utilisé dans les milieux professionnels), selon le dictionnaire terminologique FranceTerme[1]. D'autres termes proposés en français sont : rustine ou rustine logicielle.
Le mot anglais donne au pluriel : patches respectant l'orthographe anglophone, ou patchs par francisation.
Sommaire
Origine
Sa signification originelle est tirée des utilitaires (logiciels libres) diff et patch qui permettent respectivement d'extraire des différences entre deux fichiers texte et d'appliquer des changements à un fichier. Les patches sont donc des modifications de fichiers texte que sont les codes sources des logiciels. Les patchs sont donc à l'image des pièces de tissus cousues aux vêtements pour les renforcer.
Le correctif a vocation à être distribué à tous les utilisateurs du logiciel, de manière à minimiser la distribution du logiciel complet (pour des raisons de coût en bande passante ou tout simplement pour ne le rendre utilisable que par les utilisateurs enregistrés ou payants du logiciel).
L'origine proviendrait de l'utilisation des cartes perforées sur lesquelles on ajoutait une rustine pour corriger un bogue.
Nature
Il se présente normalement comme une séquence de modifications à apporter au code source du logiciel traité, après quoi le code devra être recompilé pour obtenir la version modifiée du logiciel.
Cependant, dans certains cas, notamment quand l'éditeur du logiciel ne désire pas que les utilisateurs aient accès à son code source, le correctif peut se présenter comme un programme autonome qui va greffer sur le logiciel original une modification sous la forme d'un ajout de code exécutable et de la mise en place d'une instruction de branchement vers la section de code ajoutée.
Plusieurs correctifs peuvent être distribués simultanément et sont alors regroupés dans un Service Pack (SP).
Par abus de langage, on appelle parfois patch les rustines ou corrections de bogues livrés sous forme de code compilé (binaire) annulant et remplaçant un exécutable ou une bibliothèque.
Limites du principe
Le principe des patchs offre donc un palliatif aux manques d'un logiciel, mais il a des limites. L'accumulation de patchs, surtout de sources différentes, peut, à l'image du patchwork, poser un problème de cohérence globale. Par ailleurs, l'ordre d'application des patches peut s'avérer essentiel : passer un patch avant un autre peut conduire une situation difficilement récupérable. Une approche prévoyante consiste à prévoir ce qui peut évoluer et de standardiser l'évolutivité en suivant par exemple une approche à base de plugins.
Note
- ↑ Journal officiel du 27/02/2003
Voir aussi
- Portail de la programmation informatique
- Portail de la sécurité informatique
Catégories : Programmation informatique | Sécurité informatique
Wikimedia Foundation. 2010.