Dernière version sur https://formation-perl.fr/guide-perl.html
© 2002-2024 Sylvain Lhullier - Permission est accordée de copier et distribuer ce document sans modification
et à condition de fournir un lien vers la page https://formation-perl.fr/guide-perl.html
Envie d'une formation Perl ?
Sylvain Lhullier propose des formations au langage Perl,
contactez-le.
Ce guide Perl sert de support à la formation Perl. C'est une introduction au langage initialement écrite pour Linux Magazine France et parue dans les numéros de juillet 2002 à février 2003 puis réédité au printemps 2004 dans les Dossiers Linux 2. Depuis, ce document est régulièrement mis à jour.
Ce langage très riche et puissant est une boîte à outils fort utile dans
de nombreuses situations : administration système, manipulation de textes
(mail, logs, linguistique, génétique), programmation réseau (CGI, mod_perl
,
etc.), bases de données, interfaces graphiques, etc.
Ses nombreuses bibliothèques le rendent vite irremplaçable aux yeux de ceux
qui en acquièrent la maîtrise. La prise en main du langage est facilitée
par de nombreux rapprochements possibles avec le C, le shell ou awk.
Sa conformité POSIX en fait un allié indispensable
à l'administrateur système.
Ce document a la délicate ambition de s'adresser à la fois au programmeur débutant et à celui qui connaîtrait bien le C ou le shell. Que le premier me pardonne de faire des comparaisons avec d'autres langages et de taire peut-être certains points qui me semblent évidents. Que le second m'excuse de passer à son goût trop de temps à expliquer des notions qui lui semblent simples ; les choses se corseront au fur et à mesure de la lecture...
Le début du document aborde des notions importantes en Perl et nécessaires pour bien comprendre la suite. Vous serez sans doute un peu déçu de ne pas faire des choses extrêmement puissantes immédiatement, mais patience : qui veut aller loin ménage sa monture.
Pour vous mettre en appétit, voici un petit exemple de la concision de Perl et de sa puissance :
my @r = qw(Un programme Perl est 5 fois plus rapide a ecrire); map { tr/A-Z/a-z/; s/\d//g; } @r; foreach (sort grep !/^$/, @r) { print "$_\n"; }
Ce programme crée une liste de mots (la phrase de la première ligne), transforme les majuscules de ces mots en minuscules, supprime les chiffres appartenant aux mots, supprime les mots vides et affiche la liste des mots ainsi transformés dans l'ordre lexical. Et dites-vous que vous aurez en main toutes les notions nécessaires avant la fin de la lecture du document...
Perl est un langage de haut niveau, qui a la prétention de combiner les avantages de plusieurs autres langages. Première facilité, il gère lui-même la mémoire (ramasse-miettes, pas de limite de buffers, pas d'allocation à faire, etc.). De plus, les tableaux, les listes et les tables de hachage sont natifs, ils sont intégrés à la grammaire même du langage. Récursivité, modularité, programmation objet, accès au système et au réseau, interface avec le C, avec (g)Tk, avec Apache sont aussi au menu. Et souvenez-vous que l'une des devises de Perl est : there is more than one way to do it (il y a plus d'une façon de le faire).
foreach
qw
join
split
sort
grep
map
m//
tr
ref
BEGIN
et END
Nous sommes ici au terme de ce cours introductif à la programmation en Perl. Vous avez maintenant en main la plupart des concepts et des notions pour être autonome en Perl.
N'oubliez pas que la documentation de Perl est très bien faite
et est disponible sur votre ordinateur au moyen de la commande
perldoc
: perldoc perl
vous donne accès à la liste des thèmes consultables avec
perldoc
. Par exemple perldoc perldata
vous explique les structures de données en Perl.
Pour une fonction particulière, utilisez l'option -f
:
perldoc -f chomp
Pour un module particulier, utilisez perldoc
sans option :
perldoc Data::Dumper
Vous avez maintenant en main beaucoup de notions importantes de Perl.
À vous de les mettre en œuvre pour vos propres problèmes.
Il n'est pas forcément facile d'exprimer son besoin en termes directement
exploitables dans un langage particulier, mais en ayant un peu
d'expérience de Perl, vous trouverez vite votre
manière de résoudre un problème. Vous allez alors commencer à faire connaissance
avec Tim Towtdi (There is more than one way to do it). ;-)
Sylvain Lhullier
https://sylvain.lhullier.org/
Spécialiste du langage Perl, Sylvain Lhullier propose des formations
professionnelles dans le domaine de la programmation en Perl à
destination des administrateurs système comme des développeurs
(https://formation-perl.fr/
),
contactez-le pour tout besoin de formation Perl en présentiel.
Depuis 2000, il enseigne ce langage en universités et écoles d'ingénieurs.
Il est également l'auteur de conférences et
d'ateliers sur la prise en main et l'utilisation de Perl.
Membre de l'association de promotion du langage Perl en France
"Les Mongueurs de Perl"
(http://mongueurs.net/
)
depuis 2002, il a été le coordinateur du
groupe de travail «Articles» qui a pour vocation d'aider à la
publication d'articles sur Perl et les technologies connexes. Entre 2002
et 2004, il publie, avec l'aide de ce groupe de travail, une série de
sept articles dans Linux Magazine France sur le langage Perl.
L'auteur remercie les autres membres de l'association pour les corrections effectuées.