Iniziative

Corso di perl


Deposito Bulk - via Niccolini 34-36 - Milano - dal 24 ottobre 2001




Perl

Le lezioni del corso si tengono il mercoledi sera dalle ore 19.00 alle ore 21.00 a partire dall'24 ottobre 2001 all'hacklaess, l'aula corsi invia Niccolini ang. via Fioravanti.

Qui potrete trovare la dispensa (in via di elaborazione) del corso.

Intro

Perl e' nato come linguaggio di scripting per Amministratori di Sistema. Le sue caratteristiche di integrazione con le Regular Expression e la sua sintassi compatta e essenziale consentono la scrittura di filtri di testo, analizzatori di file di log, programmi di parsing di file di configurazione in breve tempo e con poche efficaci istruzioni.

I tipi di Perl sono essenziali: esistono gli array monodimensionali e le hash (o array accessibili a chiavi testuali anziche' per posizione); tutto quello che non rientra in queste due caratteristiche e' considerato uno scalare (stringhe di testo, numeri interi o reali, date e quant'altro). La combinazione di questi tipi di base e delle reference (puntatori in altri linguaggi) consente la creazione rapida e flessibile di enormi strutture dati.

Le funzioni builtin di Perl consentono l'apertura, la lettura e la scrittura a file e pipe di processi, l'apertura di connessioni in rete a basso livello, il trattamento delle stringhe di testo, la gestione di data e ora in vari formati.

Successivamente Perl ha introdotto la possibilita' di dichiarare subroutine; ha implementato l'organizzazione delle variabili e delle subroutine in NameSpace consentendo cosi' la creazione di Moduli. Ciascun Modulo puo' contenere variabili e codice esportabili a discrezione del programmatore per offrire funzionalita' non basilari.

L'uso dei Moduli non si ferma alla creazione di librerie per gestire protocolli di rete ad alto livello e connessioni a database relazionali. Le potenzialita' di questi strumenti sono state evolute sino a definire una completa implementazione di Oggetti, con tanto di ereditarieta' fra classi ed altro.

Nonostante questa rapida espansione, Perl non ha mai perso le sue caratteristiche di linguaggio di scripting: rapidita', essenzialita' e compattezza.

Inoltre le sue capacita' di parsing testuale integrate con la semplicita' di interfacciamento ai protocolli di rete a livello piu' o meno alto ne hanno fatto il linguaggio de facto per la scrittura di CGI e il lavoro su web. La creazione del modulo CGI.pm ha inoltre enormemente incrementato la semplicita' di gestione dei dati passati via form.

Perl e' insomma una scelta vantaggiosa sia per quanti vogliano imparare un linguaggio di programmazione, sia per quanti abbiano esigenze di gestione di workstation, sia per quanti lavorino con server web (ma non solo web).

Programma

  1. Introduzione a Perl
    • Perl come filosofia
    • Perl come linguaggio
  2. Gli operatori
    • Aritmetici
    • Stringhe
    • Logici
    • Lettura da filehandle ()
  3. I tipi di Perl
    • Gli Scalari
    • Gli Array
    • Le Hash
    • Le strutture dati
  4. Le funzioni essenziali
    • Funzioni per le stringhe (chomp, chop, length)
    • Funzioni per gli array (push, pop, shift, unshift)
    • Funzioni per le hash (keys)
    • Funzioni per le date (localtime, time)
    • Funzioni per il sistema (system, fork)
    • Funzioni varie (sort)
  5. Scoping, NameSpace, Package e Moduli
    • Lo scope (campo di visibilita') delle variabili (my, local)
    • Il concetto di Package e di NameSpace
    • Il concetto di Modulo
    • Esempi di dichiarazioni di Moduli
  6. Gli Oggetti
    • Il concetto di Oggetto sotto Perl
    • Il costruttore e la funzione bless
    • Metodi
    • Ereditarieta'
  7. Le regular expression in perl
    • Cenni di regular expression
    • Gli operatori per le regular expression (=~, =!)
  8. Moduli notevoli
    • Moduli di rete (SMTP, DNS)
    • Moduli di interfacciamento a programmi (sendmail)
    • Moduli DBI/DBD per l'interfacciamento ai database relazionali
    • Modulo CGI.pm per la scrittura semplificata di CGI
    • Moduli per la grafica (binding a Gtk per la progettazione di interfacce)
  9. Cenni aggiuntivi e bonus tracks
    • Format: report dai file
    • Tutto quello che avreste voluto da Perl: http://www.CPAN.org/
    • Perl embedded: ePerl
    • Perl e Apache: configurazione e programmazione di un server web in Perl


Riferimento:  Tx0 ;


TOP
home | docs | chi siamo | iniziative | progetti | loackers | search | links