Les systèmes informatiques sont de plus en plus hétérogènes et
en permanence interconnectés. Les développeurs et les administrateurs
système et réseau ont besoin d'être polyvalents dans le monde de l'entreprise,
il leur faut donc des outils souples, performants et capables
de s'interfacer rapidement à des protocoles et à des formats de fichiers
multiples et variés. Ce cours présente deux exemples de logiciels Libres
permettant cette interopérabilité : le langage Perl avec sa souplesse,
sa puissance et ses riches bibliothèques, ainsi qu'Apache, le serveur web
le plus utilisé au monde.
Perl est un langage très riche et puissant. C'est une boîte à outils fort
utile dans de nombreuses situations, le couteau suisse du monde Unix.
Ses nombreuses bibliothèques qui touchent des domaines très variés
le rendent vite irremplaçable aux yeux de ceux qui en acquièrent la maîtrise.
Apache est le serveur web le plus utilisé au monde, c'est la référence dans le
domaine du web. La fondation Apache est très motrice dans les technologies
web et connexes : XML, Perl, Java, serveurs d'applications, etc.
Sa maîtrise facilite le travail de l'administrateur système et réseau
ainsi que la compréhension de l'utilisation du web au quotidien.
Programme :
- Bases du langage Perl :
- scalaires,
- structures de contrôle,
- listes,
- tableaux,
- fonctions,
- tables de hachage,
- fichiers et entrées/sorties,
- Programmation avancée en Perl :
- appels système,
- expressions régulières,
- gestions des erreurs et exceptions,
- références,
- modules,
- programmation objet,
- Fonctions utiles :
- appels système,
- gestion de formats de données,
- manipulation du temps,
- Modules de Perl :
- communication réseau avec les sockets,
- multi-activités threads,
- génération, envoi et analyse de courriels avec MIME,
- requêtes web avec LWP,
- analyse de HTML,
- analyse de XML,
- interfaces réseau (FTP, SSH, POP3, SMTP, etc),
- Accès aux bases de données avec BDI,
- Graphisme avec Perl/Tk.
- Serveur web Apache :
- configuration,
- multilinguisme,
- restriction par adresse IP ou par mot de passe,
- hôtes virtuels,
- gestion du proxy/cache mod_proxy,
- Ré-écriture d'URL mod_rewrite,
- HTTPS,
- Un exemple de web dynamique en Perl/Apache avec CGI :
- rappels (X)HTML et formulaires,
- applications web,
- bases de données,
- Introduction à mod_perl et Mason, les moteurs Perl d'Apache.
Bibliographie :
- "Introduction à Perl" 3e édition par Schwartz et Phoenix chez O'Reilly
- "Programmation en Perl" 3e édition par Wall, Christiansen et Orwant chez O'Reilly
- "Perl pour l'impatient" par Desreux chez Eyrolles
- "Perl en action" par Christiansen et Torkington chez O'Reilly
- "Programmation avancée en Perl" par Srinivasan chez O'Reilly
- "Object Oriented Perl" par Conway chez Manning Publications Company
- "Maîtrise des expressions régulières" 2e édition par Friedl chez O'Reilly
- "Introduction à Perl/Tk" par Walsh chez O'Reilly
- "Perl DBI, le guide du développeur" par Descartes et Bunce chez O'Reilly
- "Apache - La référence" 3e édition par Laurie et Laurie chez O'Reilly
- "Apache en action" par Coar et Bowen chez O'Reilly
- "Programmation CGI en Perl" 2e édition par Guelich, Gundavaram et Birznieks chez O'Reilly
- "Practical mod_perl" par Bekman, Cholet chez O'Reilly
- "Writing Apache Modules with Perl and C" par Stein, MacEachern chez O'Reilly
- "Embedding Perl in HTML with Mason" par Rolsky, Williams chez O'Reilly