À retenir
- Il travaille sur le texte du code source avant la compilation.
- Il permet d'automatiser des tâches répétitives et d'organiser de gros projets.
- Le résultat de son travail est un code temporaire, souvent invisible pour le développeur, qui est ensuite transmis à l'ordinateur.
Un préprocesseur est un outil informatique qui prépare et transforme le code source d'un programme avant que celui-ci ne soit réellement traduit en langage machine. On peut le comparer à un assistant qui prépare tous les ingrédients et découpe les légumes avant que le chef cuisinier (le compilateur) ne commence la cuisson du plat.
Étymologie
Le terme est formé du préfixe latin prae- (avant) et du mot processus (avancement, progression). En informatique, il désigne l'étape de traitement qui précède l'étape principale de compilation ou d'interprétation.
Exemples d'usage
- Sass / SCSS : Un préprocesseur qui permet d'utiliser des variables et des fonctions dans des feuilles de style CSS.
- Le préprocesseur C : Utilise des directives comme
#definepour créer des raccourcis de code ou#includepour insérer des fichiers. - Babel : Un outil qui transforme du code JavaScript moderne en une version plus ancienne pour garantir la compatibilité avec tous les navigateurs.
Cas d'usage
Le préprocesseur intervient massivement dans le développement web pour simplifier l'écriture du design (CSS) et dans la programmation système pour gérer différentes configurations matérielles au sein d'un même fichier de code.
Bonnes pratiques
Évitez d'abuser des macros (raccourcis complexes) qui peuvent rendre le code difficile à lire et à corriger en cas d'erreur. Utilisez-le principalement pour l'organisation du code et la suppression des répétitions inutiles.
Synonymes
Antonymes
Conseil
Si vous apprenez le développement web, voyez le préprocesseur comme un moyen de rendre votre code plus propre et plus facile à maintenir sur le long terme. C'est un gain de temps précieux pour les projets complexes.
Questions fréquentes
Le préprocesseur change-t-il les performances de mon logiciel ?
Non, son travail s'arrête avant la création du logiciel final. Il n'a aucun impact sur la vitesse d'exécution de l'application.
Quelle est la différence avec un compilateur ?
Le préprocesseur fait de la manipulation de texte (copier-coller, remplacement), tandis que le compilateur traduit la logique du code en instructions compréhensibles par le processeur.
Un transpileur est-il un préprocesseur ?
Oui, un transpileur (comme Babel) est une forme moderne de préprocesseur qui traduit un langage vers une autre version du même langage.