Formation Perl
Modules avec un nom composé
Les modules avec un nom composé permettent de regrouper des modules sous une même bannière. Par exemple Net inclus les modules Cmd, Config, Domain, FTP, hostent, netent, Netrc, NNTP, Ping, POP3, prtoent, servent, SMTP, Time.
3.5.1 Exemple : Création du Module Boite : :Outils
1. mkdir Boite
2. mv Outils.pm Boite/
Il nous faut maintenant modifier le module pour indiquer son nom complet devenu Boite::Outils.
package Boite::Outils;
Listing 3.6 – script3.pl
1 # ! / usr / bin / perl −w 2 use s t r i c t ; 3 use Boite : : Outils ; 4 5 $Boite : : Outils : : who= » Souricier » ; 6 print » Bonjour $Boite : : Outils : : who » ;
Attention : la liste @INC doit contenir le répertoire contenant le module en question. Si nécessaire, il faut donc ajouter la ligne suivante : push @INC, ‘‘repertoire’’ avant l’appel du module.
Blocs BEGIN et END
Les blocs BEGIN et END (awk) sont exécutés respectivement au chargement du module et à la fin de l’exécution du module. Ces deux blocs sont maintenant rendus inutiles par la programmation Objet (constructeur et destructeur).
Listing 3.7 – Outils.pm
1 package Outils ; 2 use s t r i c t ; 3 4 our $who = » Eric » ; 5 6 sub bonjour { 7 print » Bonjour $who ! \ n » ; 8 } 9 10 BEGIN 11 { 12 print » Chargement du module \ n » ; 13 } 14 15 END 16 { 17 print » Fin du module \ n » ; 18 } 19 20 1;