CORSO PERL02: Programmazione con linguaggio PERL moderno - CEGEKA Education
←
→
Trascrizione del contenuto della pagina
Se il tuo browser non visualizza correttamente la pagina, ti preghiamo di leggere il contenuto della pagina quaggiù
CORSO PERL02: Programmazione con linguaggio PERL moderno CEGEKA Education corsi di formazione professionale © Cegeka S.p.A. - documento aggiornato al 10-09-2018
Programmazione con linguaggio PERL moderno Il corso avanzato su PERL è dedicato a tutti i programmatori che conoscono già il PERL e vorrebbero riiniziare ad utilizzarlo. Perl è un linguaggio di programmazione libero di uso generale, che funziona su oltre 100 diverse piattaforme: dai laptop ai server, dall’home computer ai mainframe, e si adatta sia a piccoli che grandi progetti. Nato per risolvere i problemi di estrazione dati e reportistica ha riscosso successo via via in diversi ambiti di programmazione: syadmin, web, analisi dati, bioinformatica, marketing. Durata del corso 5 giorni Destinatari / Audience Programmatori con esperienza in PERL. Obiettivi / Goals Il corso completa le conoscenze di programmatori PERL classico. Requisiti / Requirements Conoscenza del linguaggio PERL. Moduli / Modules Modulo 1: Usare il Perl Moderno La Filosofia Perl Perldoc L'espressività I contesti: void, scalare, lista, numerico, stringa, booleano Idee implicite La variabile scalare di default Le variabili array di default Perl e la sua comunità CPAN Strumenti per la gestione di CPAN Siti della comunità Siti sullo sviluppo Modulo 2: Il Linguaggio Perl Nomi Nomi di variabili e sigilli Namespace Variabili Scope delle variabili © Cegeka S.p.A. - documento aggiornato al 10-09-2018
Sigilli delle variabili Variabili anonime Variabili, tipi e coercizione Valori Stringhe Stringhe e Unicode Codifica dei caratteri Unicode nei vostri filehandle Unicode nei vostri dati Unicode nei vostri dati Unicode nei vostri programmi Conversione implicita Numeri Undef La lista vuota Liste Modulo 3: Controllo di flusso Direttive di scelta L'operatore condizionale ternario Cortocircuiti Contesto per le direttive condizionali Direttive di ciclo Iterazione e alias Iterazione e scope Il ciclo "for" in stile C "while" e "until" Cicli dentro altri cicli Controllo di ciclo "continue" "given/when" Chiamate di coda Modulo 4: Scalari e Vettori Scalari e tipi Elementi di un array Assegnamento ad array Operazioni sugli array Slice di array Array e contesto Interpolazione di array Modulo 5: Vettori associativi Dichiarazione di hash Indicizzazione di hash Esistenza di chiavi di hash Accedere a chiavi e valori degli hash Slice di hash L'hash vuoto Idiomi degli hash Bloccare gli hash Modulo 6: Coercizione © Cegeka S.p.A. - documento aggiornato al 10-09-2018
Coercizione booleana Coercizione a stringa Coercizione numerica Coercizione di riferimento Cache di coercizioni Dualvar Modulo 7: Package Package e namespace Modulo 8: Riferimenti Riferimenti a scalari Riferimenti ad array Riferimenti a hash Dereferenziazione automatica Riferimenti a funzioni Riferimenti a filehandle Reference count Riferimenti e funzioni Modulo 9: Strutture dati annidate Autovivificazione Debugging di strutture dati annidate Riferimenti circolari Alternative alle strutture dati annidate. Modulo 10: Operatori Caratteristiche degli operatori Precedenza Associatività Arità Posizione Tipi di operatori Operatori numerici Operatori stringa Operatori logici Operatori bit-a-bit Operatori speciali Modulo 11: Funzioni Dichiarazione di funzioni Invocazione di funzioni Parametri delle funzioni Appiattimento Slurping Aliasing Funzioni e namespace Importazione Gestione degli errori Validazione degli argomenti Argomenti avanzati sulle funzioni © Cegeka S.p.A. - documento aggiornato al 10-09-2018
Conoscenza del contesto Ricorsione Lessicali Chiamate di coda Trappole e funzionalità da evitare Modulo 12: Scope Scope lessicale Lo scope di "our" Scope dinamico Scope di variabili "state" Modulo 13: Funzioni anonime Dichiarazione di funzioni anonime Nomi di funzioni anonime Funzioni anonime implicite Modulo 14: Chiusure Creazione di chiusure Uso delle chiusure Chiusure e applicazione parziali: "state" e chiusure "state" e pseudo-state Modulo 15: Attributi Uso degli attributi Svantaggi degli attributi Modulo 15: AUTOLOAD Funzionalità base di AUTOLOAD Redirezionare dei metodi in AUTOLOAD() Generazione di codice in AUTOLOAD() Svantaggi di AUTOLOAD Modulo 16: Espressioni regolari e matching Letterali L'operatore qr// e la combinazione di regex Quantificatori Greediness Ancore di regex Metacaratteri Classi di caratteri Cattura Catture con nome Catture numerate Raggruppamento e alternativa Altre sequenze di escape Asserzioni Modificatori di regex © Cegeka S.p.A. - documento aggiornato al 10-09-2018
Matching intelligente Modulo 16: Classi ed oggetti Classi Metodi Attributi Incapsulamento Polimorfismo Ruoli e DOES() Ereditarietà Ereditarietà e attributi Ordine di dispatch dei metodi Ereditarietà e metodi Ereditarietà e isa() Moose e il sistema OO di Perl 5 Riferimenti blessed Ricerca di metodi e ereditarietà AUTOLOAD Sovrascrittura di metodi e SUPER Strategie per sopravvivere ai riferimenti blessed Riflessione Verificare se un modulo è stato caricato Verificare l'esistenza di un package Verificare l'esistenza di una classe Verificare il numero di versione di un modulo Verificare l'esistenza di una funzione Verificare l'esistenza di un metodo Consultare le tabelle dei simboli OO avanzato in Perl Preferite la composizione all'ereditarietà Principio di singola responsabilità Non ripetetevi Principio di sostituzione di Liskov Sottotipi e coercizioni Immutabilità Modulo 17: Stile ed efficacia Scrivere codice Perl manutenibile Scrivere in Perl idiomatico Scrivere codice Perl efficace Eccezioni Sollevare eccezioni Catturare eccezioni Avvertenze sulle eccezioni Eccezioni predefinite Direttive Direttive e scope Uso delle direttive Direttive utili Modulo 18: Gestire programmi reali Testing Test::More © Cegeka S.p.A. - documento aggiornato al 10-09-2018
Eseguire test Migliorare i confronti Organizzazione dei test Altri moduli di testing Gestione dei warning Generare i warning Attivare e disattivare i warning Disabilitare categorie di warning Rendere fatali i warning Catturare i warning Registrare i Vostri warning File Input e output open a due Argomenti Lettura da file Scrittura su file Chiusura dei file Variabili speciali di gestione dei file Directory e path Manipolazione di path Manipolazione di file Moduli Uso e importazione Esportazione Organizzare il codice con i moduli Distribuzioni Attributi di una distribuzione Strumenti CPAN per gestire le distribuzioni Progettazione delle distribuzioni Il package UNIVERSAL Il metodo isa() Il metodo can() Il metodo VERSION() Il metodo DOES() Estendere UNIVERSAL Generazione di codice eval Chiusure parametriche Manipolazioni durante la compilazione Class::MOP Overloading Overloading di operazioni comuni Overload e ereditarietà Usi dell'overloading Taint e sicurezza Uso del modo taint Origine dei dati marchiati Rimuovere il taint dai dati Rimuovere il taint dall'ambiente Trappole di taint Modulo 19: Perl oltre la sintassi Gli idiomi L'oggetto $self Parametri per nome © Cegeka S.p.A. - documento aggiornato al 10-09-2018
La trasformata di Schwartz Slurp semplificato di file Gestire il main Esecuzione controllata Validazione postfissa dei parametri Regex en passant Coercizioni unarie Variabili globali Gestire le variabili sovraglobali Nomi in inglese Variabili sovraglobali utili Alternative alle variabili sovraglobali Bareword Usi appropriati delle bareword Bareword come chiavi di hash Bareword come nomi di package Bareword come nomi di blocchi di codice Bareword come costanti Usi inappropriati delle bareword Bareword nelle chiamate di funzione Bareword come valori di hash Bareword come filehandle Bareword come funzioni per sort Oggetti indiretti Invocazioni indirette con bareword Limitazioni scalari della notazione indiretta Alternative alla notazione indiretta Prototipi Il problema dei prototipi Usi appropriati dei prototipi Equivalenza metodi-funzioni Prospettiva del chiamante Prospettiva del chiamato Tie Legare variabili Implementazione di variabili legate Quando usare le variabili legate Modulo 20: Cosa Manca Default mancanti La direttiva strict La direttiva warnings IO: File e IO::Handle La direttiva autodie © Cegeka S.p.A. - documento aggiornato al 10-09-2018
CEGEKA Education corsi di formazione professionale La formazione di qualità, su misura per te Flessibile Training on the job Two-steps I corsi possono essere Docenti altamente qualificati ti Teoria e pratica vanno a organizzati negli orari e nelle affiancheranno durante una braccetto. Il nostro percorso modalità più adatte alle tue giornata di lavoro e ti aiuteranno formativo, suddiviso in due fasi, esigenze, in modo che abbiano ad utilizzare le tecnologie per ti permette di acquisire la il minor impatto possibile sulle risolvere problemi reali. conoscenza e di testarne subito tue attività quotidiane. l’efficacia. Sharing Course On-Site One-to-One Corsi in aula di gruppo, con I corsi possono svolgersi presso Corsi progettati e realizzati su teoria e laboratori, questi ultimi una delle sedi CEGEKA o misura, sia di gruppo che proposti da ogni singolo presso la vostra sede sia sul individuali con docente partecipante su aspetti reali territorio nazionale che interamente dedicato tratti dalla pratica quotidiana internazionale. www.cegeka.it/education/ learning@cegeka.it Milano Roma Padova Via Alessandro Volta, 16 Via Casilina 3T, Palazzina D Corso Stati Uniti 18/B 20093 Cologno Monzese, MI 00182 Roma 35127 Padova Tel: +39 02 254427 255 Tel: +39 06 72910119 Tel. +39 049 8976800 © Cegeka S.p.A. - documento aggiornato al 10-09-2018 Powered by TCPDF (www.tcpdf.org)
Puoi anche leggere