La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

ITALIAN PERL WORKSHOP 2009 Costruzione di una command line in Perl Costruzione di una command line in Perl Emiliano Bruni –

Presentazioni simili


Presentazione sul tema: "ITALIAN PERL WORKSHOP 2009 Costruzione di una command line in Perl Costruzione di una command line in Perl Emiliano Bruni –"— Transcript della presentazione:

1 ITALIAN PERL WORKSHOP 2009 Costruzione di una command line in Perl Costruzione di una command line in Perl Emiliano Bruni –

2 Scopo del gioco Costruire una command line per la gestione di tabelle di databaseCostruire una command line per la gestione di tabelle di database Vogliamo avere la possibilità di visualizzare, aggiungere, modificare e cancellare dati su tabelle di un DBVogliamo avere la possibilità di visualizzare, aggiungere, modificare e cancellare dati su tabelle di un DB Nel caso di dati strutturati gerarchicamente vogliamo riportare tale gerarchia nella nostra command lineNel caso di dati strutturati gerarchicamente vogliamo riportare tale gerarchia nella nostra command line

3 Database di esempio Configurazione stack TCP/IP di un pcConfigurazione stack TCP/IP di un pc

4 Struttura gerarchica desempio ip (sezione)ip (sezione) –address –route –dhcp (sezione) clientclient (server)(server)

5 Risultato finale

6 Ovviamente cerchiamo su CPANOvviamente cerchiamo su CPAN –Fry::Shell –Term::Shell –Zoidberg –Shell::Parser Una buona casa inizia da buone fondamenta

7 Loading/unloading shell components at runtimeLoading/unloading shell components at runtime Alias dei comandi già integratoAlias dei comandi già integrato Help dei comandi già integratoHelp dei comandi già integrato Opzioni e variabili di ambiente supportateOpzioni e variabili di ambiente supportate Antocompletamento già integratoAntocompletamento già integrato Comportamente quasi completamente modificabile tramite plugini esterniComportamente quasi completamente modificabile tramite plugini esterni –parser –Autocompletamento –view La scelta è Fry::Shell…perché?

8 Progetto abbandonatoProgetto abbandonato –ultima versione del 12 gennaio 2005 Chiaramente una versione lasciata a metàChiaramente una versione lasciata a metà –CPAN Testers PASS (1) FAIL (49) UNKNOWN (61) –CPAN Testers PASS (1) FAIL (49) UNKNOWN (61) –Ovviamente, mancando il Makefile.PL –Alcune funzionalità presenti nella documentazione assenti in quanto commentate nel codice –Documentazione incompleta e, IMHO, poco comprensibile –Un esempio per tutti: se hai Carp, automaticamente carica il modulo Fry::Error:Carp che non esiste. Struttura del codice e gestione della classi non molto chiara o troppo proStruttura del codice e gestione della classi non molto chiara o troppo pro Ma cè sempre il rovescio della medaglia

9 Scaricando lultima versione 0.15Scaricando lultima versione 0.15 Prelevando il Makefile.PL dalla Ah, non cè manco li. Per fortuna che è presente nella 0.11Prelevando il Makefile.PL dalla Ah, non cè manco li. Per fortuna che è presente nella 0.11 – use ExtUtils::MakeMaker; WriteMakefile(NAME=>'Fry::Shell', VERSION_FROM=>'lib/Fry/Shell.pm', ); Come lo installiamo?

10 Conchiglia in 10 stepConchiglia in 10 step 1.Hello World 2.Patch di Fry::Shell per rimuovere il Carp error 3.Vediamo come si aggiungono gli alias e gli help 4.Morte dei comandi precaricati 5.Aggiungiamo il comando help e quit 6.Il nostro primo comando di sezione, il comando ip 7.Aggiungiamo tutti gli altri comandi di sezione 8.Aggiungiamo / e.. per muoverci tra le sezioni 9.CRUD 10. Esempio completo (quasi) Ora che abbiamo lo strumento, usiamolo!

11 Step 1: Hello World


Scaricare ppt "ITALIAN PERL WORKSHOP 2009 Costruzione di una command line in Perl Costruzione di una command line in Perl Emiliano Bruni –"

Presentazioni simili


Annunci Google