Public visé
Informaticiens concernés par des procédures d’exploitation en environnements Unix, Linux ou Windows.
Prérequis
Bonnes connaissances du langage Perl ou connaissances équivalentes à celles apportées par le cours “Langage Perl” réf. PRL.
Objectifs pédagogiques
À l’issue de la formation, le participant sera en mesure de :
- Manipuler les fonctions systèmes avec Perl
- Mettre en oeuvre les concepts Objet
- Utiliser Perl/Tk
- Mettre en oeuvre GTK
Programme
Programmation système
- Rappel des principes des processus : fork et exec
- Rappel des principes de la gestion des signaux
- Envoyer un signal à des processus : la fonction kill
- Gérer les signaux : le pragma sigtrap, installer un gestionnaire de signal
- Programmation des sockets et services de IO::Socket à Net::Server
- Présentation de la programmation des threads
Travaux pratiques : Ecriture de programmes Perl pour manipuler les fonctions systèmes.
Perl et l’Objet
- Quelques définitions : Programmation Orientée Objet, classe, instance, constructeur, destructeur, héritage
- Mise en oeuvre de l’Objet : le paquetage pour la classe, le hachage pour les attributs, les fonctions pour les méthodes
- La création d’instance : la bénédiction (bless) de la référence de l’objet
- Programmer un constructeur
- Agir quand l’objet est détruit, la méthode DESTROY
- L’héritage : le tableau @ISA et la classe UNIVERSAL
- La surcharge de méthode, l’utilisation de SUPER
- Abstraction : l’avenir de l’objet dans Perl, de Class::Std et Class::Accessor à Moose
Travaux pratiques : Programmation de classes. Mise en oeuvre des concepts Objets (héritage, surcharge…).
Interface graphique : de Perl/Tk à GTK
- Comprendre et maintenir du code écrit en Perl/Tk
- Présentation et installation de Perl/Tk
- Gestionnaire de géométrie : Pack, Grid, Place
- Les Widgets par famille
- Les boutons : Button, Checkbutton, Radiobutton
- Libellé et zone de saisie : Label, Entry
- Ascenseur, liste, menu et saisie de texte : Scrollbar, Listbox, Menubutton, Optionmenu, Text
- Les conteneurs : Canvas, Frame, Toplevel
Travaux pratiques : Création d’une application avec interface graphique en Perl/Tk et gestion événementielle.
Écrire du nouveau code en utilisant GTK
- Lien entre Perl et GTK : installer GTK et ses bibliothèques
- Widget : hiérarchie, création, accélérateurs clavier, conteneurs de bases
- Widget : signaux et événements
- Les types de boutons : Toggle (interrupteurs), radio
Travaux pratiques : Manipulation de différents composants : boutons, boite de boutons, Widget cadre…
Evolutions
- Fonctionnalités apportées par Perl 5.10, 5.12, 5.14
- Perl 6 : un nouveau langage
- Nouveautés : les sigils, typage statique et dynamique, paramètres formels des fonctions
- Un véritable langage Objet
- Les jonctions et l’évaluation paresseuse
Modalités d’évaluation
Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de QCM, mises en situation, travaux pratiques… Le participant complète également un test de positionnement en amont et en aval pour valider les compétences acquises.