USE |
Utilise |
|---|---|
Perl |
Syntaxe
| use version |
| use module |
| use module list |
|
use pragma [...] |
Paramètres
| Nom | Description | |
|---|---|---|
| module | Ce paramètre permet d'indiquer des modules particulier : | |
| Module | Description | |
| strict | Ce module permet d'indiquer qu'il faut utilisé une interprétation très strict du langage Perl. | |
| Switch | Ce module permet d'inclure des instructions «switch» d'évaluation de cas dans le code. | |
| warnings | Ce module permet d'indiquer qu'il faut afficher les messages d'attentions. | |
| ... | ... | |
| pragma | Ce paramètre permet d'indiquer des pragma particulier : | |
| Pragma | Description | |
| constant | Ce pragma permet de définir une constante selon la syntaxe suivante: «use constant maconstante => mavaleur;». |
|
Description
Cette instruction permet d'inclure un module.
Remarques
- Permet d'importer des modules au moment de la compilation : L'instruction use est utilisée pour charger un module ou un pragma dès la compilation du script Perl. Cela signifie que son effet est immédiat et agit avant même l'exécution principale du code, ce qui est crucial pour les modules modifiant le comportement du compilateur.
- Syntaxe simplifiée et compacte : use est une forme concise de BEGIN { require Module; import Module LIST; }. Cela évite d'avoir à appeler manuellement require et import, tout en assurant que le module est chargé au bon moment. Elle est donc plus sûre et lisible que l'approche manuelle.
- Peut charger des pragmas pour modifier le comportement du langage : Certains arguments passés à use sont des pragmas, comme strict, warnings ou constant. Ces pragmas ne sont pas des modules au sens strict, mais des directives internes à Perl qui permettent de renforcer la rigueur ou la sécurité du code.
- Active automatiquement l'importation des symboles : Quand un module exporte des fonctions ou des variables, use les rend immédiatement accessibles dans le code appelant. Cela évite d'avoir à les préfixer, à condition qu'ils soient dans la liste d'exportation du module (@EXPORT ou @EXPORT_OK).
- Permet de spécifier des versions minimales de Perl ou de modules : On peut utiliser use pour forcer une version minimale de Perl, par exemple : use 5.010;. Cela évite que le script ne s'exécute sur une version du moteur Perl qui ne prendrait pas en charge certaines fonctionnalités.
- Obligatoire pour certaines fonctionnalités modernes : Certains comportements ne sont disponibles que si un pragma est activé via use, comme say (introduit avec use 5.010;) ou les smart match (given, when, Switch). Cela fait de use un outil de configuration du langage en plus d'un chargeur de module.
- Déconseillé dans les blocs conditionnels : Étant une directive de compilation, use ne doit pas être utilisée dans une condition (if) ou une boucle. Pour charger un module de façon conditionnelle à l'exécution, on doit utiliser require à la place, souvent couplé à un appel à import manuel si nécessaire.
- Facilite la modularité et la réutilisation du code : L'instruction use est à la base de la programmation modulaire en Perl. Elle permet de scinder son application en fichiers spécialisés, de charger des bibliothèques CPAN, et de rendre son code plus maintenable et évolutif, tout en favorisant la séparation des responsabilités.
Exemple
Voici des exemples diverses d'utilisations :
on obtiendra le résultat suivant :
Valeur de POSIX::abs(-1234) = 1234Valeur maximal = 15
Références
La Bible Micro Application HTML & Développement Web, Stefan Munz, Wolfgang Nefzger, 2003, ISBN: 2-7429-2898-7, page 1223
Perl/CGI-Programmation avancée Grand Livre, Edition Micro Application, Rolf D. Stoll, 2001, ISBN: 2742919082, page 246
Dernière mise à jour : Dimanche, le 18 octobre 2015