Ruby Language and some applications. Dott. Giovanni Nigita
|
|
- Sara Antonini
- 8 anni fa
- Visualizzazioni
Transcript
1 Ruby Language and some applications Dott. Giovanni Nigita
2 Panoramica u u u u u Introduzione Gli strumenti in Ruby Convenzioni e programmazione ad oggetti Tipi di dati Strutture di controllo u Ereditarietà?!? u u u u u Gestione file e directory Espressioni regolari Altre cose Pacchetti di Ruby Il pacchetto HPRICOT
3 Introduzione La storia (I) Il linguaggio di programmazione Ruby è stato progettato nel 1993 dal giapponese Yukihiro Matsumoto Ma inizialmente non ebbe molto successo!
4 Introduzione La storia (II) Per più di un decennio non prese mai il decollo Inizialmente la documentazione era esclusivamente in giapponese!!!
5 Introduzione La storia (III) L anno di svolta fu il 2006! Anno in cui si affermarono i framework Ruby on Rails.
6 Introduzione La storia (IV) Adesso abbiamo veramente tanta documentazione, sia in inglese che in italiano!
7 Ruby è un linguaggio: open source general purpose interpretato Introduzione Alcune orientato agli oggetti caratteristiche (I) Possiamo definirlo come un linguaggio che ha acquisito tanto da parte di altri linguaggi come: Smalltalk, Perl, Python, C, C++, PHP, Phyton Infatti uno dei primi slogan era il seguente: (Smalltalk + Perl) / 2
8 Introduzione Alcune caratteristiche (II) Per cui avendo preso qualcosa da altri linguaggi di certo molti aspetti sintattici ritorneranno familiari. Per cui dovrebbe essere relativamente semplice la comprensione di tale linguaggio!
9 Gli strumenti in Ruby Interprete di Ruby (I) Quello di cui abbiamo bisogno è di un editor di teso e di un interprete. Per vedere le varie opzioni dell interprete lanciamo dalla shell il comando - -help ruby --help
10 Gli strumenti in Ruby Interprete di Ruby (II) -c: avviene un controllo della sintassi del codice, e se tutto corretto ritorna Syntax OK. In questo caso il codice non viene eseguito. -d, -debug: se si vuole effettuare un debug -e command : avviene l esecuzione del comando passato come argomento -v, --verbose: vengono mostrate in output delle informazioni addizionali quali la versione dell interprete, warning in fase di compilazione,
11 Gli strumenti in Ruby Interactive Ruby Oltre all interprete troviamo pure una shell interattiva! Permette di sperimentare in real time le potenzialità di questo linguaggio ed è molto utile in fasi di sperimentazione. Tra le funzionalità di questa shell abbiamo la Tab Completation! Per sfruttare questo utile strumento, basta eseguire da terminare il comando irb In particolare con il comando irb -- help, è possibile avere una lista di opzioni che si possono affiancare al comando irb.
12 Gli strumenti in Ruby RDoc and Ri (I) Tramite lo strumento RDoc (Ruby Documentation System) si può avere la documentazione completa estratta dai file sorgenti Tale documentazione viene fornita sia in formato html sia formattata per l utility ri, quest ultimo è un tool che permette di visualizzare di visualizzare la documetazione da linea di comando Potete scaricare l ultima versione andando nel seguente link:
13 Gli strumenti in Ruby RDoc and Ri (II) Esempio, eseguendo dal terminale il comando: ri String.chomp otterremo la documentazione relativa alla funzione chomp:
14 Gli strumenti in Ruby eruby (I) Tramite lo strumento eruby (embedded Ruby) è possibile inserire codice Ruby all interno di pagine HTML. Per cui, come nel caso di PHP, si possono creare delle pagine dinamiche. Il codice Ruby viene incorporato all interno dei delimitatori <% e %> Ovviamente, i blocchi di codici inseriti vengono valutati sul posto e vengono sostituiti dal risultato della loro valutazione.
15 Gli strumenti in Ruby eruby (II) Una linea di Ruby: Linee multiple: <% ruby code %> <ul> <% 2.times do %> <li>hello guys</li> <% end %> </ul> Output: Hello guys Hello guys
16 Gli strumenti in Ruby eruby (III) Se si incontra la linea di codice: <%= expression %> allora viene valutata l espressione e ne restituisce il valore, inoltre ogni linea di questo tipo <# %> rappresenta un commento.
17 Gli strumenti in Ruby eruby (IV) Abbiamo diverse implementazioni di eruby: eruby: è un implementazione di eruby scritta in C erb: è una implementazione di eruby scritto puramente Ruby ed include le sue librerie standard erubis: è una implementazione di eruby in Ruby e in Java Queste implementazioni rappresenta una buona alternativi agli altri linguaggi come PHP, Perl, ASP
18 Gli strumenti in Ruby Le librerie di base In ambiente Unix le librerie di base si troveranno nel seguente percorso: /usr/lib/ruby mentre in ambiente Windows risiedono nella directory c:\ruby\lib\ruby\ In entrambi i percorsi possiamo trovare le seguenti cartelle: 1.8: (attualmente siamo alla versione 1.9, anche se vi ritroverete sicuramente pre-installata la 1.8) contiene i moduli e le estensioni standard gems: contiene le librerie e le applicazioni installate con l utility RubyGems site_ruby: contiene i moduli e le estensioni aggiunte dal programmatore e che non sono incluse nella distribuzione di base
19 Gli strumenti in Ruby RubyGems RubyGems è un framework che gestisce le applicazioni e le librerie sotto forma di pacchetti chiamati gems. Esso permette di cercare, installare, disinstallare e aggiornare le librerie. Nel link sottostante si possono trovare le librerie dalla A allo Zinco
20 Convenzioni e programmazione OO I nomi(i) I nomi in Ruby fanno riferimento a costanti, variabili, metodi, classsi e moduli, nonostante alcune parole sono riservate: Tramite il primo carattere del nome, Ruby distingue il modo in cui viene utilizzato. Un nome può essere una lettera minuscola, maiuscola o un underscore, seguito da qualsiasi altro carattere che sia una combinazione dei simboli appartenenti alle tre precedenti categorie.
21 Convenzioni e programmazione OO I nomi(ii) Le variabili non sono tipizzate, per cui possono contenere qualsiasi tipo di dato. Dal nome della variabile viene dedotto il suo scopo, ossia se essa stessa sia locale, globale, istanza, ecc : il nome di variabili locali devono essere dichiarate con un lettera minuscola o con un carattere underscore le variabili globali iniziano con il simbolo $ le variabili di istanza con il quelle di classe con due se si vuole specificare una costante il nome deve iniziare con una lettera maiuscola
22 Convenzioni e programmazione OO I nomi(iii) Il nome di classe e di modulo sono costanti, e seguono la convenzione utilizzata per le variabili costanti. Il nome del metodo inizia con un lettera minuscola seguita da altri caratteri. Come caratteri speciali possono contenere, come suffisso, solo il simbolo! e quello?.
23 Convenzioni e programmazione OO I commenti I commenti all interno di un codice vengono inseriti attraverso il carattere #. Tutto quello che seguirà tale carattere non verrà considerato. Inoltre, è possibile fare un commento multiriga, e questo è possibile farlo mettendo il testo che si vuole commentare tra i tag =begin e =end:
24 Convenzioni e programmazione OO Qualche nozione non guasta mai! (I) In Ruby ogni cosa è un oggetto!!!
25 Convenzioni e programmazione OO Qualche nozione non guasta mai! (II) Questo paradigma di programmazione prevede di raggruppare in un porzione circoscritta (classe) del codice sorgente la dichiarazione delle strutture dati e delle procedure che operano su di esse. Nella programmazione orientata agli oggetti (OOP, Object Oriented Programming) un oggetto può essere visto come un contenitore di dati dotato di attributi (dati) dotato di una serie di metodi (procedure) secondo quanto dichiarato dalle rispettive classi. Un linguaggio è definito ad oggetti quando permette di implementare tre meccanismi chiamati incapsulamento, ereditarietà e polimorfismo.
26 Convenzioni e programmazione OO Qualche nozione non guasta mai! (III) L oggetto è una istanza di una classe! Esso è dotato di tutti gli attributi e i metodi definiti dalla classe. Dal lato del calcolatore, ogni oggetto è rappresentato da un certa locazione di memoria, nella quale si trovano memorizzati gli attributi, il valore di questi determinano lo stato interno di una dell oggetto. Istanziare un oggetto vuol dire allocare memoria ed inizializzarla in base alle specifiche della classe definisce.
27 Convenzioni e programmazione OO Gli oggetti in Ruby (I) Riportiamo un semplice esempio
28 Convenzioni e programmazione OO Gli oggetti in Ruby (II) Ancora un altro esempio
29 Convenzioni e programmazione OO Gli oggetti in Ruby (III) Gestione degli attributi Ruby fornisce delle scorciatoie per la gestione degli attributi: attr_reader, attr_writer, attr_accessor e attr. Il valore true che segue il nome dell attributo indica che la variabile è pure scrivibile, in modo analogo avremmo potuto utilizzare attr_accessor
30 Tipi di dati I numeri (I) Le classi che definiscono i numeri Nel linguaggio Ruby abbiamo la presenza di numeri interi e in virgola mobile. I numeri interi sono oggetti o della classe Fixnum o della classe Bignum i numeri che possono essere rappresentati da una word sono oggetti della classe Fixnum, altrimenti appartengono alla classe Bignum. I numeri in virgola mobile sono oggetti della classe Float.
31 Tipi di dati I numeri (II) Rappresentazione di numeri non decimali Affinché si abbia una rappresentazione non decimale di un numero, a quest ultimo bisogna far precedere un indicatore di base, in particolare: 0b per i binari; 0 per gli ottali; 0d per i decimali; 0x per gli esadecimali
32 Tipi di dati I numeri (III) Alcuni metodi per le classi Fixnum e Bignum Operazioni aritmetiche (+,-,*,/,div,%,modulo,**) Operazioni bitwise (~,,&,^,<<,>>) Altre operazione: dimensione in byte (size): 1.size => 4 operazioni di conversione (to_f, to_s) valore assoluto (abs)
33 Tipi di dati I numeri (IV) La classe Float I numeri in virgola mobile appartengono alla classe Float Questa classe, oltre ad avere i metodi poc anzi visto, ha: infinite? : tale metodo restituisce -1 se il numero è meno infinito, +1 se il numero è più infinito, nil se il numero è finito. nan? : ritorna true se il valore è un numero non valido, false altrimenti
34 Tipi di dati Le stringhe (I) Le stringhe sono delle istanze della classe String, e sono rappresentate da un successione di caratteri racchiusi tra singoli apici ( ) o tra le virgolette ( ) Si può accedere ad ogni singolo carattere della stringa []:
35 Tipi di dati Le stringhe (II) Esempio: Per visualizzare un carattere invece del codice ASCII, possiamo utilizzare il metodo chr:
36 Tipi di dati Le stringhe (III) Per questo utilizziamo le []: Accedere a sottostringhe (I) Se utilizziamo i escludiamo il secondo estremo: Possiamo pure specificare il range tramite un qualsiasi numero intero:
37 Tipi di dati Le stringhe (IV) Accedere a sottostringhe (II) Può essere specificata all interno delle [] la sottostringa da ricercare: Inoltre, possono essere specificate delle espressioni regolari J! Ci ritorneremo!!
38 Tipi di dati Le stringhe (V) L assegnazione viene effettuata attraverso il metodo []=, abbiamo una situazione analoga a metodo [] visto prima Giusto qualche esempio
39 Tipi di dati Le stringhe (VI) Alcuni importanti metodi applicabili alle stringhe (I) * + << capitalize
40 Tipi di dati Le stringhe (VI) Alcuni importanti metodi applicabili alle stringhe (II) downcase swapcase chop chomp
41 Tipi di dati Le stringhe (VI) Alcuni importanti metodi applicabili alle stringhe (III) sub e gsub split tr
42 Tipi di dati Le stringhe (VII) Alcuni importanti metodi applicabili alle stringhe (IV) strip lstrip rstrip ljust rjust center
43 Tipi di dati Blocchi e iteratori (I) I blocchi sono delle regioni di codice racchiuse tra due parole do e end oppure tra due parentesi { }. Un iteratore è un un metodo che prende come argomento un blocco. Esempio Possiamo inoltre passare dei parametri all iteratore. Ad esempio, l iteratore each della classe String prende come parametro il separatore, che di default è il carattere \n. Riprendendo l esempio avremo:
44 Tipi di dati Blocchi e iteratori (II) Vediamo adesso un esempio in cui possiamo richiamare un blocco all interno di un metodo, attraverso l istruzione yield:
45 Tipi di dati Array (I) Gli array sono istanze della classe Array e vengono creati in questo modo: o in alternativa: In questi due casi creeremo un array vuoto, per la creazione di un array non vuoto basta semplicemente passare i valori separati da virgole: N.B. Un array è una lista di oggetti non necessariamente dello stesso tipo
46 Tipi di dati Array (II) Al comando new è possibile passare due parametri, il primo indica la dimensione dell array mentre il secondo il valore con il quale verrà inizializzato: Attraverso il metodo []= è possibile inserire nell array nuovi elementi o modificare quelli già presenti:
47 Tipi di dati Array (III) E possibile indicare come indice due interi che rappresentano rispettivamente l inizio e il numero di elementi da sostituire con il valore passato: Allo stesso modo può essere usato il range:
48 Tipi di dati Array (IV) Un metodo alternativo per inserire elementi in un array è dato dai metodi << e push e il loro comportamento è simile ad uno stack: Attraverso il metodo pop è possibile invece eliminare l ultimo elemento di un array:
49 Tipi di dati Array (V) Adesso vediamo un ultima tecnica per l inserimento di elementi all interno di un array. Per fare questo, utilizziamo il metodo insert: inoltre è possibile inserire più elementi a partire dall indice specificato come primo parametro:
50 Tipi di dati Array (VI) + concatenazione: Operazioni sugli array (I) - differenza:
51 Tipi di dati Array (VII) & intersezione: Operazioni sugli array (II) * : questo metodo si comporta modo differente in base al parametro che gli si viene passato.
52 Tipi di dati Array (VIII) Alcuni importanti metodi applicabili alle stringhe (I) clear compact delete empty? include?
53 Tipi di dati Array (IX) Alcuni importanti metodi applicabili alle stringhe (II) index join lenght, nitems reverse sort
54 Tipi di dati Array (IX) Altri metodi each reverse_each each_index collect! delete_if
55 Tipi di dati Hash (I) Sono liste di coppie di chiavi e valori e sono istanze della classe Hash Ogni coppia è separata dall altra tramite una virgola, inoltre tra le chiavi e il valore deve esserci il simbolo => A differenza degli array gli indici possono essere di qualsiasi tipo Gli hash in Ruby sono racchiusi tra le parentesi { e } Come creare un array:
56 Tipi di dati Hash (II) Per popolare un hash basta utilizzare il metodo []=, visto nel caso degli array con la differenza che al posto dell indice bisogna specificare la chiave: Per accedere ad un specifico valore si utilizza il metodo []: Tramite il metodo keys e values possibile elencare rispettivamente tutti le chiavi e tutti i valori:
57 Tipi di dati Hash (III) Diversi metodi visti in precedenza per gli array sono presenti anche negli hash! Uno in particolare che possiamo vedere, molto utile, è il metodo each che passa al blocco come parametri sia la chiave che il valore dell hash. Inoltre, esistono i metodi each_key e each_value che passano rispettivamente al blocco la chiave e il valore.
58 Strutture di controllo if e unless (I) If (I) Ovviamente chiunque il significato di tale costrutto, per cui evitiamo di parlarne e la sua sintassi:
59 Strutture di controllo if e unless (II) If (II) Osserviamo un rapido esempio J :
60 Strutture di controllo if e unless (III) If (III) Se il nostro if si trova in più linee allora si può anche omettere a per cui il nostro esempio diventa: Inoltre, è possibile inserire un espressione if anche in coda ad una istruzione:
61 Strutture di controllo if e unless (IV) Unless (I) L opposto dell if esiste il costrutto unless che esegue le istruzioni associati all espressione booleana che risulta falsa:
62 Strutture di controllo if e unless (V) Unless (II) Vediamo un piccolo esempio Anche in questo caso possiamo mettere il costrutto unless alla fine dell istruzione:
63 Strutture di controllo if e unless (VI) Vediamo adesso un altra forma più particolare che richiede l uso dell operatore? : In questo caso assegneremo alla variabile segno la stringa negativo se la variabile numero è negativa, altrimenti assegneremo la stringa positivo.
64 Strutture di controllo case (I) A volte per una questione di comodità e di chiarezza nel codice si preferisce utilizzare l istruzione case in alternativa a if e unless. Il costrutto case ha la seguente sintassi:
65 Strutture di controllo case (II) Vediamo subito un esempio L istruzione che si trova dopo la parola else è quella che viene eseguita di default nel momento in cui falliscono tutte le altre istruzioni.
66 Strutture di controllo case (III) E possibile fare uso della parola chiave then e dei due punti qualora la condizione si trovi nella stessa linea dell istruzione:
67 Strutture di controllo case (IV) In ultima analisi, considerando che il costrutto case restituisce il valore dell ultima espressione valutata allora è possibile assegnare tale risultato ad un variabile:
68 Strutture di controllo while, until e for (I) While Esempio:
69 Strutture di controllo while, until e for (II) Until Esempio: In questo caso viene eseguita l espressione finché è falsa
70 Strutture di controllo while, until e for (III) For Esempio:
71 Strutture di controllo while, until e for (IV) Come uscire dai cicli break Il comando break fa terminare il ciclo e l esecuzione del programma riparte dall istruzione che segue il ciclo:
72 Strutture di controllo while, until e for (V) Come saltare una iterazione next Attraverso il comando next è possibile saltare una iterazione del ciclo e il programma riprenderà dall iterazione successiva:
73 Gestione File Apertura e chiusura (I) File è la classe che contiene i metodi per la gestione dei file (apertura, chiusura, lettura, scrittura ) Abbiamo a disposizione due metodi per aprire un file: Metodo classico File.new A questo punto tutto le operazioni vanno eseguite sull oggetto my_file di tipo File. Una volta concluse le operazioni, per chiudere il file basta semplicemente il seguente comando
74 Gestione File Apertura e chiusura (II) Il metodo File.new ha la seguente sintassi: Tale metodo può prendere da uno a tre parametri: il primo rappresenta il nome del file da aprire, il secondo la modalità di apertura, il terzo i permessi che verranno associati al file. Di default il file viene aperto in solo lettura.
75 Gestione File Apertura e chiusura (III) La modalità di apertura può essere espressa sia come stringa: r: apertura a solo lettura r+: apertura per lettura e scrittura dall inizio del file w: apertura a solo scrittura, in particolare se il file non esiste ne viene creato uno nuovo, altrimenti viene azzerato w+: apertura per lettura e scrittura, se il file non esiste ne viene creato uno nuovo, altrimenti viene azzerato a: apertura a solo scrittura dalla fine del file, inoltre se il file non esiste allora viene creato a+: apertura sia come or di flag (sono costanti della classe File) APPEND: apertura in modalità append; CREAT: viene creato il file se non esiste; RDONLY: apertura a solo lettura; RDWR: apertura per lettura e scrittura; TRUNC: apre il file e se già esiste lo azzera; WRONLY: apertura a solo scrittura.
76 Gestione File Apertura e chiusura (IV) Per quanto riguarda il terzo argomento, i permessi vengono indicati, nei sistemi Unix-like, nella forma Owner-Group-Other. Vediamo subito un piccolo esempio In questo caso, il file se non esiste viene creato, se esiste lo apre e lo azzera, ed inoltre viene aperto in lettura e scrittura. Per quanto riguarda i permessi, possiamo leggere e scrivere nel file, mentre il nostro gruppo e chiunque altro può solamente leggerlo.
77 Gestione File Apertura e chiusura (V) Apertura tramite il metodo open Al metodo open può essere associato un blocco al quale viene passato il file appena aperto. Senza il blocco associato open è sinonimo di File.new. Quando viene utilizzato open non è richiesta la chiamata di close al termine delle operazioni, in quanto esso verrà chiuso automaticamente all uscita del blocco.
78 Gestione File Lettura e scrittura (I) Le operazioni base sui file appena aperto sono la lettura e la scrittura. Per la lettura possiamo utilizzare il metodo gets che viene ereditato dalla classe IO (precisiamo che la classe File è un sottoclasse della classe IO). Altrimenti possiamo fare ricorso agli iteratori nel momento in cui utilizziamo il metodo open per aprire il file: each_byte: chiama il blocco per ogni byte each_line (anche each): chiama il blocco per ogni riga
79 Gestione File Lettura e scrittura (II) Attraverso gli iteratori each_line e each possiamo iterare su ogni linea del file: risparmiamo qualche riga di codice J
80 Gestione File Lettura e scrittura (III) Un ulteriore modo al quanto elegante per aprire un file è dato dal metodo foreach della classe IO. Ad esso viene passato come argomento un file, il metodo apre tale file, chiama il blocco per ogni linea e alla fine chiude automaticamente il file: Per la scrittura su un file viene utilizzato il metodo write il quale prende come argomento la stringa da scrivere sul file:
81 Gestione File Lettura e scrittura (IV) In alternativa a write possiamo utilizzare: l operatore << oppure il metodo puts
82 Gestione File Alcuni metodi utili (I) Vediamo alcuni metodi utili per la gestione di file: atime, ctime, mtime: rispettivamente restituisco la data di ultimo accesso, di creazione e di modifica. chmod, chown: modificano i permessi di proprietariorename: delete: cancella il file rename: rinomina il file size: restituisce la dimensione del file in byte read: restituisce il contenuto del file in un unica stringa readlines: restituisce in un array le linee del file
83 Gestione File Alcuni metodi utili (II) Vi sono alcuni metodi interrogativi come: exist? : restituisce true se il file esiste executable? : restituisce true se il file è eseguibile readable? : restituisce true se il file è leggibile writable? : restituisce true se il file è scrivibile file? : restituisce true se il file è regolare, ossia se non è una directory, ecc. owned? : restituisce true se l user ID del processo è lo stesso del file.
84 Gestione directory La classe della gestione delle directory è Dir. Per questa classe esistono pure i metodi new, open e close visti in precedenza per la classe File: Anche in questo caso si può utilizzare il metodo open senza ricorrere successivamente a close per chiudere la directory una volta concluse le operazioni
85 Espressioni Regolari (I) Le espressioni regolari sono uno strumento molto potente per la gestione del testo. Esse forniscono dei modelli per ricercare all interno di un testo espressioni letterali. Come nel caso degli array e degli hash, gli oggetti della classe Regexp possono essere creati in diversi modi: utilizzando il metodo new nel quale viene passata l espressione regolare: oppure tra i doppi slash //:
86 Espressioni Regolari (II) Nel momento in cui viene creata un espressione regolare possiamo confrontarla con una stringa. Questo lo possiamo fare attraverso l operatore =~ o il suo negato!~ L operatore =~ restituisce la posizione del primo carattere che fa match con l espressione regolare
87 Espressioni Regolari (III) Nelle espressioni oltre ai normali caratteri possono essere usate delle sequenze di simboli che indicano determinate categorie di caratteri. un carattere qualsiasi \w lettera o numero \W il contrario di \W, né lettera né cifra \s spazio, come \t \n \r, ecc.. \S carattere non spazio \d cifra numerica \D carattere non numerico \A match con l inizio della stringa \Z match con la fine della stringa
88 Espressioni Regolari (IV) Come nel caso di \A e \Z, esistono due particolari elementi ^ e $ che vengono usati rispettivamente per cercare l espressione regolare all inizio della stringa o alla fine.+ Esistono anche dei simboli di quantità * zero o più ripetizioni del carattere precedente + una o più ripetizioni del carattere precedente {m,n} almeno m e massimo n ripetizioni del carattere precedente? al massimo una ripetizione del carattere precedente
89 Espressioni Regolari (V) Possiamo indicare la classe di caratteri all interno di un espressione regolare nel seguente modo: /[Rr]uby/ /rub[ye]/ /[aeiou]/ Ruby o ruby ruby o rube una qualsiasi vocale minuscola /[0-9]/ un qualsiasi numero compreso fra 0 e 9 /[a-z]/ /[A-Z]/ /[a-za-z0-9]/ /[^aeiou]/ /[^0-9]/ una qualsiasi lettera minuscola una qualsiasi lettera maiuscola la qualunque cosa qualcos altro rispetto ad una vocale minuscola qualcos altro rispetto ad un numero compreso fra 0 e 9
90 Espressioni Regolari (VI) La classe String (I) Vediamo adesso come possiamo utilizzare le espressioni regolare per le stringhe In questo caso index restituisce l indice della prima occorrenza della sottostringa che verifica il pattern, in modo analogo il metodo rindex restituisce l ultima occorrenza:
91 Espressioni Regolari (VI) La classe String (II) E possibile utilizzare le espressioni regolari anche con il metodo split: Infine, possiamo sfruttare le potenzialità delle regexp con il metodo scan, in questo caso tale metodo scansiona tutta la stringa presa in esame e inserisce in un array tutti i risultati che verificano il pattern:
92 Pacchetti in Ruby Introduzione a RubyGems (I) RubyGems è un framework per la gestione in modo automatica dei pacchetti. Esso si occupa dell installazione, dell aggiornamento e della distruzione Esso va installato a parte in quanto non fa parte dei programmi distribuiti direttamente da Ruby Nel seguente link trovate i sorgenti attualmente disponibili:
93 Pacchetti in Ruby Introduzione a RubyGems (II) Per l installazione di RubyGems basta eseguire il seguente comando: Se eseguiamo dal terminale in comando gem senza alcuna opzione figurerà lista di informazioni per l uso di RubyGems Per avere una lista completa dei comandi basta lanciare il seguente comando
94 Pacchetti in Ruby Comandi per RubyGems (I) Per installare una nuova gemma basta utilizzare il comando install: Per avere una lista completa delle opzioni che si possono utilizzare con il comando install basta lanciare il seguente comando:
95 Pacchetti in Ruby Comandi per RubyGems (II) Per poter utilizzare le librerie nel codice sorgente occorre caricare la gemma, per fare ciò si utilizza il comando require: Per disinstallare un pacchetto attraverso RubyGems basta utilizzare il comando unistall Attraverso il comando list invece è possibile vedere le gemme installate attualmente nella propria macchina. Indicando l opzione remote è possibile avere una lista completa dei pacchetti presenti nel repository. Di default quello ufficiale è rubyforge.org Infine, attraverso il comando update possiamo aggiornare la versione di un pacchetto se viene specificato il suo nome, altrimenti vengono aggiornati tutti quelli presenti nella propria macchina.
96 Pacchetto HPRICOT (I) Hpricot (v 0.8.6) è una gemma che può essere scaricata dal sito: Al link In alternativa può essere installato dalla shell di ruby con il seguente comando: gem install hpricot
97 Pacchetto HPRICOT (II) Hpricot è un parser HTML, scritto in C, veloce e flessibile. Le ricerche possono basarsi su diversi elementi: ID degli elementi Selettori CSS Tag Ed in generale tutti gli elementi che compongono una pagina html
98 Pacchetto HPRICOT (III) Documentazione Demo on line Competitor, sempre una ruby gems: Nokogiri (
99 Pacchetto HPRICOT (IV) Input: Dal www require 'open-uri' doc = open(" { f Hpricot(f) } Da file locali doc = open("index.html") { f Hpricot(f) } Oppure una generica stringa doc = Hpricot("<p>A simple <b>test</b> string.</p> )
100 Pacchetto HPRICOT (V) Ricerca degli elementi all interno del documento vengono effettuati tramite il comando doc.search Per ottenere il contenuto dell elemento cercato si usa il comando.inner_html ADESSO SCRIPT DI ESEMPIO
NOZIONI BASE SHELL E SCRIPT LINUX
NOZIONI BASE SHELL E SCRIPT LINUX Aggiornato al 11 gennaio 2006 Ermes ZANNONI (ermes@zannoni.to.it) (http://www.zannoni.to.it) Indice : 1. Introduzione 2. La Shell 2.1 Comandida Shell 2.1.1 File e directory
DettagliNascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti
Nascita di Java L uscita di Java, verso la metà degli anni novanta, fu accolta con molto entusiasmo dalla comunità dei programmatori e dei provider di servizi internet perché permetteva agli utenti del
DettagliObiettivi d esame PHP Developer Fundamentals on MySQL Environment
Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web
DettagliI file di dati. Unità didattica D1 1
I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità
DettagliRichiesta pagina PHP (es: index.php)
PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con
DettagliAutomatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione
Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento
DettagliPer scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli
CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per
DettagliIntroduzione alla programmazione in C
Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale
DettagliLaboratorio di Informatica
Laboratorio di Informatica Introduzione a Python Dottore Paolo Parisen Toldin - parisent@cs.unibo.it Argomenti trattati Che cosa è python Variabili Assegnazione Condizionale Iterazione in una lista di
DettagliProgrammazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto
Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE
DettagliIntroduzione al Python
Andrea Passerini passerini@disi.unitn.it Informatica Caratteristiche procedurale si specifica la procedura da eseguire sui dati strutturato concetto di visibililtà delle variabili orientato agli oggetti
DettagliIndice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28
Indice 25 184 Introduzione XI Capitolo 1 Impostazione dell ambiente di sviluppo 2 1.1 Introduzione ai siti Web dinamici 2 1.2 Impostazione dell ambiente di sviluppo 4 1.3 Scaricamento di Apache 6 1.4 Installazione
DettagliISTITUTO TECNICO INDUSTRIALE STATALE LA GESTIONE DEI FILE DI TESTO IN C++
ISTITUTO TECNICO INDUSTRIALE STATALE G A L I L E O F E R R A R I S DIISPENSA DII IINFORMATIICA E SIISTEMII AUTOMATIICII LA GESTIONE DEI FILE DI TESTO IN C++ Le classi per la gestione dei file. Il C++ è
DettagliIl sistema operativo UNIX/Linux. Gli script di shell
Il sistema operativo UNIX/Linux Gli script di shell Introduzione Le shell permettono La gestione di comandi su linea di comando La shell comprende automaticamente quando il costrutto termina e lo esegue
Dettagli. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi
Capitolo Terzo Primi passi con Microsoft Access Sommario: 1. Aprire e chiudere Microsoft Access. - 2. Aprire un database esistente. - 3. La barra multifunzione di Microsoft Access 2007. - 4. Creare e salvare
DettagliProgrammare in Java. Olga Scotti
Programmare in Java Olga Scotti Linguaggi di programmazione linguaggio macchina assembler linguaggi ad alto livello Linguaggi ad alto livello istruzioni comprensibili linguaggio simile a quello naturale
DettagliIntroduzione al MATLAB c Parte 2
Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione
DettagliUtilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini
Introduzione all utilizzo di Visual Basic for Application Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini PROGRAMMAZIONE Insieme delle attività da svolgersi per creare
DettagliLink e permessi. Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione. Corso di Sistemi Operativi A. A. 2005-2006
Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione Corso di Sistemi Operativi A. A. 2005-2006 Link e permessi Link Un riferimento ad un file è detto link Ogni file può avere un numero
DettagliLinguaggio C. Fondamenti. Struttura di un programma.
Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C La nascita del linguaggio C fu dovuta all esigenza di disporre di un Linguaggio ad alto livello adatto alla realizzazione
DettagliCorso di Informatica
Corso di Informatica Modulo T2 3-Compilatori e interpreti 1 Prerequisiti Principi di programmazione Utilizzo di un compilatore 2 1 Introduzione Una volta progettato un algoritmo codificato in un linguaggio
DettagliTipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:
Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante
DettagliConvertitori numerici in Excel
ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel
DettagliSistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory
FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File
DettagliAPPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL
APPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL In informatica il Pascal è un linguaggio di programmazione creato da Niklaus Wirth ed é un linguaggio di programmazione strutturata. I linguaggi di programmazione
DettagliCompilatore risorse display grafico LCD serie IEC-line
Compilatore risorse display grafico LCD serie IEC-line aggiornamento: 22-11-2012 IEC-line by OVERDIGIT overdigit.com 1. Il display grafico LCD I PLC della serie IPC-line possono disporre opzionalmente
DettagliMon Ami 3000 Varianti articolo Gestione di varianti articoli
Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione
DettagliL utility Unix awk [Aho-Weinberger-Kernighan]
L utility Unix awk [Aho-Weinberger-Kernighan] L utility awk serve per processare file di testo secondo un programma specificato dall utente. L utility awk legge riga per riga i file ed esegue una o più
DettagliAlgoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.
Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito
DettagliXML e PHP. Gestire XML con PHP. Appendice
Appendice XML e PHP Tra tutti i linguaggi di programmazione esistenti PHP è tra quelli che meglio si adattano all elaborazione di documenti XML. PHP è un linguaggio di programmazione che consente di arricchire
Dettagli19. LA PROGRAMMAZIONE LATO SERVER
19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici
DettagliCapitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti
Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta
DettagliIntroduzione a Dev-C++
Introduzione a Dev-C++ Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Note: Dev-C++ richiede Windows 95/98/NT/2000/XP
DettagliVersione 7.0 Taglie e Colori. Negozio Facile
Versione 7.0 Taglie e Colori Negozio Facile Negozio Facile: Gestione taglie e colori Il concetto di base dal quale siamo partiti è che ogni variante taglia/colore sia un articolo a se stante. Partendo
DettagliFunzioni in C. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni
DettagliCapitolo 11 -- Silberschatz
Implementazione del File System Capitolo 11 -- Silberschatz Implementazione del File System File system: Definizione dell aspetto del sistema agli occhi dell utente Algoritmi e strutture dati che permettono
Dettagli11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0
11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 PAG. 2 DI 38 INDICE 1. PREMESSA 3 2. SCARICO DEL SOFTWARE 4 2.1 AMBIENTE WINDOWS 5 2.2 AMBIENTE MACINTOSH 6 2.3 AMBIENTE
DettagliProcedure memorizzate SQL-2003/PSM. Forma base di PSM. Parametri in PSM
Procedure memorizzate SQL-2003/PSM Procedure memorizzate nel database Programmazione general-purpose Leggere sezione 8.2 di Garcia-Molina et al. Lucidi derivati da quelli di Jeffrey D. Ullman 1 Una estensione
DettagliCorso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)
Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dell ambiente di sviluppo, compilazione ed esecuzione 1 Introduzione Java è un linguaggio
DettagliStream EDitor (sed) sed NON modifica l'input 2. L'output viene inviato allo standard output e puo' essere rediretto
Sed & Awk Stream EDitor (sed) sed: editor di linea che non richiede l'interazione con l'utente sed può filtrare l'input che riceve da un file o una pipe La sintassi di sed NON definisce un output: L'output
DettagliIntroduzione al Linguaggio C
Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C
DettagliAlcune regole di base per scrivere un programma in linguaggio C
Alcune regole di base per scrivere un programma in linguaggio C Un programma il linguaggio C (listato) viene scritto in formato testo ed archiviato in un file: *.c Per scrivere un listato C si utilizza
DettagliWG-TRANSLATE Manuale Utente WG TRANSLATE. Pagina 1 di 15
WG TRANSLATE Pagina 1 di 15 Sommario WG TRANSLATE... 1 1.1 INTRODUZIONE... 3 1 TRADUZIONE DISPLAY FILE... 3 1.1 Traduzione singolo display file... 4 1.2 Traduzione stringhe da display file... 5 1.3 Traduzione
Dettagliwww.filoweb.it STAMPA UNIONE DI WORD
STAMPA UNIONE DI WORD Molte volte abbiamo bisogno di stampare più volte lo stesso documento cambiando solo alcuni dati. Potremmo farlo manualmente e perdere un sacco di tempo, oppure possiamo ricorrere
DettagliJAVASCRIPT. Tale file è associato alla pagina web mediante il tag <script> inserito nella sezione <head> con la seguente sintassi:
JAVASCRIPT Introduzione Con l HTML siamo in grado di realizzare pagine web statiche. Con il linguaggio Javascript, invece, possiamo interagire modificando il contenuto della pagina. Il linguaggio javascript
DettagliInforma(ca Appun% dal laboratorio 2
Informa(ca Appun% dal laboratorio 2 Conce- fondamentali Esistono programmi, come Microso8 Word oppure Acrobat Reader, che vengono usa% dagli uten% per far eseguire al computer determinate operazioni (come
DettagliLABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B
LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B 23.XI.2012 VINCENZO MARRA Indice Esercizio 1 1 Menu 1 Tempo: 35 min. 2 Commento 1 2 Esercizio 2 2 Ordinamento e ricerca binaria con la classe
Dettagli12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)
12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,
DettagliL ACQUISIZIONE E LA GESTIONE DEI DOCUMENTI ELETTRONICI
L ACQUISIZIONE E LA GESTIONE DEI DOCUMENTI ELETTRONICI DOCUSOFT integra una procedura software per la creazione e l'archiviazione guidata di documenti in formato elettronico (documenti Microsoft Word,
DettagliGLI SCRIPT DI SHELL. Lucidi a cura di B.De Carolis. UNIX shell script UdB- Dip Informatica
GLI SCRIPT DI SHELL Lucidi a cura di B.De Carolis Shell Unix - Linux comandi Interfaccia di alto livello tra utente e SO. Il processore interpreta e mette in esecuzione comandi da: 1) standard input o
DettagliManuale per i redattori del sito web OttoInforma
Manuale per i redattori del sito web OttoInforma Contenuti 1. Login 2. Creare un nuovo articolo 3. Pubblicare l articolo 4. Salvare l articolo in bozza 5. Le categorie 6. Modificare un articolo 7. Modificare
Dettagli3.5.1.1 Aprire, preparare un documento da utilizzare come documento principale per una stampa unione.
Elaborazione testi 133 3.5 Stampa unione 3.5.1 Preparazione 3.5.1.1 Aprire, preparare un documento da utilizzare come documento principale per una stampa unione. Abbiamo visto, parlando della gestione
DettagliOBIETTIVI SPECIFICI DI APPRENDIMENTO
Disciplina:... Anno scolastico: 20.../20... Classe/i :... Docente:... DI APPRENDIMENTO SEZIONE 1 Premesse matematiche Nozioni fondamentali sui sistemi di numerazione Sistemi di numerazione in base diversa
DettagliJava:Struttura di Programma. Fabio Scanu a.s. 2014/2015
Java:Struttura di Programma Fabio Scanu a.s. 2014/2015 Altre Attenzioni da riservare Java è Case Sensitive: La variabile «a» e la variabile «A» sono diverse Java ha alcune regole di scrittura: I nomi delle
DettagliStruttura di un programma Java
Struttura di un programma Java Un programma in Java è un insieme di dichiarazioni di classi. Una classe non può contenere direttamente delle istruzioni, ma può contenere la dichiarazione di metodi, che
DettagliCapitolo Quarto...2 Le direttive di assemblaggio di ASM 68000...2 Premessa...2 1. Program Location Counter e direttiva ORG...2 2.
Capitolo Quarto...2 Le direttive di assemblaggio di ASM 68000...2 Premessa...2 1. Program Location Counter e direttiva ORG...2 2. Dichiarazione di dati: le direttive DS e DC...3 2.1 Direttiva DS...3 2.2
DettagliAl giorno d oggi, i sistemi per la gestione di database
Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,
DettagliDefinire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12};
ESERCIZI 2 LABORATORIO Problema 1 Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12}; Chiede all'utente un numero e, tramite ricerca
DettagliCorso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP
Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Web PHP Tematiche Trattate
Dettagli4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0
Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice
DettagliGli algoritmi: definizioni e proprietà
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Gli algoritmi: definizioni e proprietà La presente dispensa e da
Dettagli1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi?
1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi? 1. La nozione di multiprogrammazione prevede la possibilità di
DettagliGESTIONE INFORMATICA DEI DATI AZIENDALI
GESTIONE INFORMATICA DEI DATI AZIENDALI Alberto ZANONI Centro Vito Volterra Università Tor Vergata Via Columbia 2, 00133 Roma, Italy zanoni@volterra.uniroma2.it Rudimenti di programmazione Programming
DettagliLaboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 18 31/03/2014
Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 18 31/03/2014 Funzioni: Dichiarazione e Definizione La dichiarazione di una funzione serve a comunicare al compilatore quali sono
DettagliConsultazione Documenti
Consultazione Documenti 1 SOMMARIO Accesso alla Procedura Lato azienda...3 Caratteristiche dell Applicazione dialogo-web...3 Modifica Password...6 Accesso negato ai servizi On line di Nuova Informatica...7
DettagliMANUALE UTENTE Fiscali Free
MANUALE UTENTE Fiscali Free Le informazioni contenute in questa pubblicazione sono soggette a modifiche da parte della ComputerNetRimini. Il software descritto in questa pubblicazione viene rilasciato
DettagliGHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.
*+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti
DettagliDall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Dall Algoritmo al Programma Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni IL PROGRAMMA Gli algoritmi sono modelli di descrizione astratti e per controllarne il funzionamento devono essere
DettagliApprofondimenti. Il controllo di SQL Injection nelle pagine ASP e ASP.NET. U.A. 5 - Database in rete con le pagine ASP e ASP.
U.A. 5 - Database in rete con le pagine ASP e ASP.NET 269 Il controllo di SQL Injection nelle pagine ASP e ASP.NET Approfondimenti Con il termine SQL Injection si intende l aggiunta di istruzioni SQL nell
DettagliCodifica: dal diagramma a blocchi al linguaggio C++
Codifica: dal diagramma a blocchi al linguaggio C++ E necessario chiarire inizialmente alcuni concetti. La compilazione Il dispositivo del computer addetto all esecuzione dei programmi è la CPU La CPU
DettagliLezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
DettagliDatabase 1 biblioteca universitaria. Testo del quesito
Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole
DettagliLezione II: Web server e ambiente di lavoro
Lezione II: Web server e ambiente di lavoro In questa lezione, in laboratorio, si mostrerà quali sono i passi necessari per creare ed eseguire una pagina ASP. Brevemente, verrà fatto anche vedere, come
DettagliEditor vi. Editor vi
Editor vi vi 1 Editor vi Il vi è l editor di testo standard per UNIX, è presente in tutte le versioni base e funziona con qualsiasi terminale a caratteri Permette di visualizzare una schermata alla volta
DettagliVariabili e tipi di dato
Variabili e tipi di dato Tutte le variabili devono essere dichiarate, specificandone il tipo La dichiarazione deve precedere l uso Il tipo è un concetto astratto che esprime: L allocazione di spazio per
DettagliEsercizi su. Funzioni
Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità
DettagliModulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...
Modulo A Programmiamo in Pascal Unità didattiche 1. Installiamo il Dev-Pascal 2. Il programma e le variabili 3. Input dei dati 4. Utilizziamo gli operatori matematici e commentiamo il codice COSA IMPAREREMO...
DettagliTutorial per l installazione del J2SE 6 e configurazione del sistema operativo
Tutorial per l installazione del J2SE 6 e configurazione del sistema operativo Ing. Giovanni Ponti DEIS Università della Calabria gponti@deis.unical.it La piattaforma Java mette a disposizione una serie
DettagliManuale di realizzazione dei modelli di documento
MystiqueXML Manuale di realizzazione dei modelli di documento Indice 1 Le tabelle...5 1.1 Tabelle condizionali...5 1.2 Tabelle Multiple - un solo livello...5 1.3 Tabelle Multiple - a più livelli...5 2
Dettagli1. Le macro in Access 2000/2003
LIBRERIA WEB 1. Le macro in Access 2000/2003 Per creare una macro, si deve aprire l elenco delle macro dalla finestra principale del database: facendo clic su Nuovo, si presenta la griglia che permette
DettagliProgettazione di un Database
Progettazione di un Database Per comprendere il processo di progettazione di un Database deve essere chiaro il modo con cui vengono organizzati e quindi memorizzati i dati in un sistema di gestione di
DettagliLa selezione binaria
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Introduzione L esecuzione di tutte le istruzioni in sequenza può non è sufficiente per
DettagliSoluzione dell esercizio del 2 Febbraio 2004
Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo
DettagliNOZIONI BASE PER ESERCITAZIONI
NOZIONI BASE PER ESERCITAZIONI Shahram Rahatlou Laboratorio di Calcolo, Anno Accademico 2015-16 http://www.roma1.infn.it/people/rahatlou/labcalc/ Sistema Operativo Hardware Software n Routine e programmi
DettagliLe variabili. Olga Scotti
Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.
DettagliOSSIF WEB. Manuale query builder
OSSIF WEB Manuale query builder - Maggio 2010 1) Sommario 1) SOMMARIO... 2 INTRODUZIONE... 3 Scopo del documento... 3 Struttura del documento... 3 Descrizione dell interfaccia grafica... 3 SELEZIONE DI
DettagliFPf per Windows 3.1. Guida all uso
FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete
DettagliEsercizi di JavaScript
Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio
DettagliISTRUZIONI PER L INSTALLAZIONE DI MINGW
ISTRUZIONI PER L INSTALLAZIONE DI MINGW Prima di iniziare la procedura di installazione di MinGW dobbiamo dire che il presente software è un compilatore C che non possiede un ambiente di programmazione.
DettagliASP 3.0 Il Sito Dinamico
www.idstudio.it ASP 3.0 Il Sito Dinamico di Lorenzo Garassino Introduzione e scopo del libro 1. Scenario 1.1. Il panorama 1.2. Sito Statico o Dinamico? 1.3. Prospettive 2. Cos è ASP 2.1. Descrizione 2.2.
DettagliCome modificare la propria Home Page e gli elementi correlati
Come modificare la propria Home Page e gli elementi correlati Versione del documento: 3.0 Ultimo aggiornamento: 2006-09-15 Riferimento: webmaster (webmaster.economia@unimi.it) La modifica delle informazioni
DettagliCorso di PHP. Prerequisiti. 1 - Introduzione
Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Conoscere il concetto di espressione 2 1 Introduzione
DettagliRegione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da
ARPA Fonte Dati Regione Toscana Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.0 Data emissione 06/08/13 Stato DRAFT 1 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 2 Sommario
DettagliCorso di PHP. Prerequisiti. 1 - Introduzione
Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere
DettagliMANUALE D USO DELLA PIATTAFORMA ITCMS
MANUALE D USO DELLA PIATTAFORMA ITCMS MANULE D USO INDICE 1. INTRODUZIONE... 2 2. ACCEDERE ALLA GESTIONE DEI CONTENUTI... 3 3. GESTIONE DEI CONTENUTI DI TIPO TESTUALE... 4 3.1 Editor... 4 3.2 Import di
DettagliPROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0)
PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0) (Da effettuare non prima del 01/01/2011) Le istruzioni si basano su un azienda che ha circa 1000 articoli, che utilizza l ultimo
DettagliCalcolatori Elettronici Parte X: l'assemblatore as88
Anno Accademico 2013/2014 Calcolatori Elettronici Parte X: l'assemblatore as88 Prof. Riccardo Torlone Università Roma Tre L'assemblatore as88 Disponibile presso: CD-ROM allegato al libro di testo del corso
DettagliPer accedere clicca su START o AVVIO (in basso a sinistra sul tuo schermo), poi su PROGRAMMI, ACCESSORI e infine su BLOCCO NOTE.
Cos'è l'html HTML è una sigla che viene da una frase inglese che vuol dire: " Linguaggio di contrassegno di ipertesti" (Hyper Text Markup Language) L'Html non è un vero e proprio linguaggio di programmazione,
DettagliInformatica. Il software (S.O.) e ancora sulle basi numeriche
(S.O.) e ancora sulle basi numeriche http://159.149.98.238/lanzavecchia/docum enti/sscta.htm 1 Il sistema operativo Un insieme di programmi che gestiscono le risorse (cpu, memoria, dischi, periferiche)
DettagliLABORATORIO DI INFORMATICA 1 2014-2015. - parte 6 -
LABORATORIO DI INFORMATICA 1 2014-2015 - parte 6 - Lettura da File Obiettivo: leggere un file Per prima cosa dobbiamo creare un oggetto che rappresenti il file che vogliamo utilizzare (inserendo anche
Dettagli