Premier Training & Business Partner Red Hat

PERL

Cos’è Perl?

Il suo ideatore, Larry Wall, definisce così il suo linguaggio:

virgolette_alteIl Perl è un linguaggio interpretato ottimizzato per la scansione di file di testo arbitrari, l’estrazione di informazioni da questi file di testo e la stampa di report basati su queste informazioni. È anche un buon linguaggio per molti lavori di manutenzione di sistema. Il linguaggio è pesato per essere pratico (facile da usare, efficiente e completo) e non per essere bello (piccolo, elegante, minimale)virgolette_basse
Perchè Perl?

La caratteristica più peculiare di questo linguaggio è la libertà di espressione che consente al programmatore: è un linguaggio “ridondante” dal punto di vista delle strutture logiche e di flusso.
Il motto del Perl è “There’s more than one way to do this” (c’è più di un modo per farlo)

Alcuni esempi di utilizzo:

  • utility di sistema
  • espressioni regolari
  • cpan, una grande quantità di package
  • accesso a database
  • networking
  • programmazione CGI e grafica
LA FORMAZIONE EXTRAORDY ACADEMY
PROGRAMMA DEL CORSO
Parte 1
  • introduzione al linguaggio di programmazione: linguaggio interpretato, breve cenno ai permessi di esecuzione files su linux e utilizzo dell’interprete
  • sintassi di base e le vairiabili (tipi di dato, utilizzo di apice e doppo apice per la dichiarazione del valore)
  • Le operazioni fondamentali con le variabili
  • utilizzo di STDIN, STDOUT e STDERR
  • dichiarazione di un array
  • i cicli foreach, for, while
  • le condizioni if e unless
  • utilizzo di swith/case
  • il ciclo while
  • le principali funzioni di perl array (shift, unshift, pop, push)
  • utilizzo degli hash
  • utilizzo dei files: stampare un file a video, aggiungere una riga al file o crearne uno nuovo
  • utilizzo della funzione stat
  • le espressioni regolari: la sintassi ed il loro funzionamento
  • utilizzo delle variabili $1, $2 …
  • le subroutine (funzioni)
  • introduzione all’utilizzo delle variabili come riferimenti ad altre variabili
  • utilizzo delle variabili come riferimenti a strutture di dat
Parte 2
  • Definizione di un package e utilizzo di bless
  • iterazione con il sistema operativo: le funzioni system, exec e l’apice inverso
  • utilizzo dei threads
  • utilizzo di threads::share avvero variabili il cui contenuto è disponibile da ogni thread e quando un processo modifica un valore questo è disponibile anche per tutti gli altri thread
  • utilizzo dei Socket