Software e Linguaggi di programmazione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Software e Linguaggi di programmazione"

Transcript

1 Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica Software e Linguaggi di programmazione Interattività Software

2 SOFTWARE elemento morbido SOFTWARE Software E la componente che consente di sfruttare le risorse fisiche (hardware) disponibili Sono i programmi che permettono di elaborare le informazioni, controllare le periferiche e produrre i risultati. Classificazione del Software software Software di BASE E un complesso di programmi collegati tra loro che consente l utilizzo minimo del sistema e la sua programmazione Software APPLICATIVO Comprende tutti i programmi destinati a risolvere specifici problemi non legati al funzionamento del sistema.

3 Fanno parte del software di base FIRMWARE (BIOS - Basic Inpot/Output System - SISTEMA OPERATIVO O.S. o D.O.S. Software Software di base ROM) Costituito da un insieme di programmi progettati per svolgere funzioni di gestione, controllo e supervisione sulle operazioni dell intero sistema Gestore file - Controllo sulle funzioni I/O Comandi di processo - Programmi di utilità Sviluppo del software Studio di fattibilità Convenienza ed attuabilità del progetto Analisi studio degli algoritmi soluzione informale Progettazione descrizione delle procedure gerarchizzazione Programmazione scrittura dei programmi soluzione formale Test prove di congruità dei programmi Revisione cambiamenti e migliorie Manutenzione correzione di errori non evidenziati durante i test Slide 6 of XX _

4 Processo di realizzazione del software Problema Analisi Soluzione informale Sistema informativo: Strumenti di supporto evoluti Formalizzazione Linguaggi basso medio alto livello Soluzione formale dell Algoritmo Programmazione Esecutore del linguaggio ad alto livello Programma ad alto livello Traduzione Sistema informativo: Ambiente di sviluppo Programma macchina Esecutore del linguaggio macchina (HW) Esecuzione Slide 7 of XX _ Si vuole avere l avvertimento ogni giorno su Farmaco da riordinare Farmaco la cui data di scadenza è oggi Farmaco scaduto Es. Scadenzario Farmaci Colonna 1 Farmaco gg rio Conf1 Conf2 Conf3 Cmax Conf4 Riga 1 Aspirina 5 10/10/ /02/ /02/ /12/2012 Tachipirina 10 13/12/ /05/2012 Sintron 3 15/02/2013 Rmax Efferalgan 8 13/12/2012 9/5/2013 Slide 8 of XX _

5 Inizio ciclo R = 1 R = R max SI NO C = 3 C = C max NO Fine ciclo SI F( R, C) = "" NO R = R + 1 SI F(R, C) > oggi AND F(R, C) <= oggi + Grio NO NO SI F ( R, C) = oggi SI F(R, C) < oggi SI Farmaco da riordinare Farmaco nel giorno di scadenza Farmaco SCADUTO C = C + 1 Slide 9 of XX _ Linguaggi di programmazione Gli algoritmi ci permettono di inquadrare e risolvere logicamente il problema, è poi necessario formalizzare l algoritmo con delle sequenze di istruzioni elementari in modo che un opportuno esecutore svolga le operazioni descritte nell algoritmo. L algoritmo deve quindi essere trascritto in un linguaggio comprensibile all esecutore. Il calcolatore per come è costruito è capace di eseguire solo le istruzioni elementari in codice binario che costituiscono il suo set di istruzioni, linguaggio macchina composto da sequenze di bit opportunamente organizzate. Nel tempo sono stati creati circa 2500 linguaggi. Slide 10 of XX _

6 Linguaggi di programmazione Slide 11 of XX _ Linguaggi di programmazione La scrittura dell algoritmo per un esecutore è quindi caratterizzato da una sintassi, regole che specificano come comporre l istruzione ben formate una semantica, specifica il significato delle operazioni nell esecuzione dell istruzione Linguaggio macchina prima generazione Linguaggi di basso livello assemblativi seconda generazione Linguaggi di medio e alto livello Fortran, Cobol, Basic, Pascal, C++, Java Slide 12 of XX _

7 Linguaggi di programmazione Linguaggi di prima generazione Il linguaggio macchina usa solo codice binario Fattori Negativi: Difficile da utilizzare in quanto utilizza solo numeri binari al più esadecimali Permette solo l uso di indirizzi di memoria di tipo numerico Difficile da correggere e/o implementare ogni eliminazione o aggiunta di istruzioni comporta lo slittamento di tanti altri indirizzi che sono da verificare Positivi: Molto efficienti in quanto il programma può essere ottimizzato sulle potenzialità dell hardware Slide 13 of XX _ Linguaggi di programmazione Linguaggi assemblatori o di seconda generazione Sono l evoluzione del linguaggio macchina e pur restando legati alla struttura del linguaggio macchina, le istruzioni a differenza del precedente hanno nomi simbolici ed il programmatore può assegnare nomi simbolici alle variabili che vengono gestite e riorganizzate dall assemblatore stesso. Slide 14 of XX _

8 Linguaggi ad alto livello Dato che l esecutore elettronico ha come sua principale caratteristica quella di eseguire operazioni in tempi estremamente contenuti gli esseri umani hanno pensato di dare alla macchina il compito di tradurre, istruzioni semanticamente più vicine a noi nelle più semplici sequenze di linguaggio macchina. Sono stati così concepiti tre diversi livelli di traduzione: Traduzione a livello interpretato si parte dal codice sorgente che viene tradotto in linea Traduzione a livello compilato si parte dal codice sorgente che viene tradotto nel suo complesso e quindi si può eseguire il codice esecutivo Traduzione a livello emulativo È un tipo di traduttore utilizzato per far girare codice eseguibile prodotto per un dato processore su un processore diverso Slide 15 of XX _ Interprete Il software interprete legge le istruzioni nel linguaggio ad alto livello le traduce e le manda in esecuzione. Fattori Positivi: se ci sono errori di sintassi questi vengono rilevati al momento dell esecuzione corretti e si può rieseguire immediatamente il codice si possono monitorare le variabili ed identificare errori di implementazione dell algoritmo, correggere in linea e rieseguire Negativi: Ogni volta che viene eseguito necessita della traduzione che rallenta l esecuzione e prevede la presenza del dizionario anche se viene protetta la manipolazione del codice sorgente Se ci sono parti del software che non vengono testate o non vengono interessate nelle prove non si possono evidenziare errori di sintassi che saranno evidenziati solo più tardi Slide 16 of XX _

9 Compilatore Il software compilato legge le istruzioni codice sorgente nel linguaggio ad alto livello le traduce effettuando tutti i possibili controlli di sintassi e congruità delle variabili. Fattori Positivi se ci sono errori di sintassi o congruità sulle variabili questi vengono rilevati tutti al momento della compilazione e possono essere corretti nella compilazione si possono assemblare più parti anche testate e compilate precedentemente per ottenere l eseguibile completo. Negativi Per la correzione di eventuali errori di trascrizione del codice, questa può essere effettuata solo a posteriori durante le prove dell eseguibile. Ogni correzione può essere fatta solo sul codice sorgente e comporta la ricompilazione del sorgente per ottenere un nuovo eseguibile Slide 17 of XX _ Interfaccia Uomo - Macchina Hardware Software per l esecutore in codice binario Linguaggio macchina Linguaggio assemblativo Linguaggi di programmazione Interpreti Compilatori - Emulatori Linguaggi naturali Linguaggi di basso livello Linguaggi a medio e alto livello Hardware dipendenti Vari paradigmi di programmazione Imperativo- Procedurale Orientato agli oggetti Funzionale Dichiarativo il legame con hardware avviene attraverso il compilatore Inglese Italiano Tedesco Indipendenti dall hardware Slide 18 of XX _

10 Linguaggi Ogni linguaggio ad alto livello consente di esprimere gli algoritmi in programmi eseguibili su un esecutore automatico. Nel tempo e con il presentarsi di problematiche di vario genere, si sono così sviluppati linguaggi con istruzioni più aderenti allo stile ed alle necessità del problema da risolvere: I linguaggi possono così essere classificati nelle quattro seguenti categorie: Paradigma imperativo - procedurale Paradigma orientato agli oggetti Paradigma funzionale Paradigma dichiarativo Slide 19 of XX _ Le istruzioni Un qualsiasi linguaggio deve avere: Istruzioni di ingresso / uscita permettono le comunicazioni con il mondo Istruzioni aritmetico / logiche permettono le elaborazioni sequenziali Istruzioni di controllo permettono di inserire punti di diramazione e costruire un albero delle decisioni Slide 20 of XX _

11 Paradigma imperativo - procedurale Paradigma Imperativo procedurale È attualmente ancora il più diffuso; si basa sull utilizzo di simboli definibili dal programmatore ed istruzioni elementari vicine alla logica con cui ci esprimiamo o con cui è stato realizzato il diagramma di flusso, nel quale le operazioni sono sequenziate secondo uno schema molto preciso e definito (imperativo) Dati ed istruzioni sono definiti separatamente Slide 21 of XX _ Paradigma imperativo - procedurale Dichiarazi n, m, i, j, w, one Inizio n delle v(x, m, w y) variabili, NO i > n SI operazioni sulle esecuzione variabili su w su stampa memorizza v(x, y) dati v(i, variabili y) j) sull' sull' indice indice delle operazioni n, Assegnazio i, j, m, leggi w, ne v(x, delle j i Fine Slide 22 of XX _

12 Paradigma imperativo - procedurale Blocco istruzioni SI... Condizione NO... main () { if (condizione) { blocco di istruzioni se vero; }. } if (condizione) then blocco di istruzioni se vero end if. Slide 23 of XX _ SI Blocco istruzioni... Condizione... Paradigma imperativo - procedurale NO Blocco istruzioni main () { if (condizione) { istruzioni se vero } else {istruzioni se falso}. } if (condizione) then istruzioni se vero else istruzioni se falso end if. Slide 24 of XX _

13 SI... Blocco istruzioni Condizione... NO Paradigma imperativo - procedurale main () { while (condizione) { blocco di istruzioni finché vero; }. } while condizione blocco di istruzioni finché vero wend. Slide 25 of XX _ Paradigma imperativo - procedurale Slide 26 of XX _

14 Paradigma imperativo - procedurale Slide 27 of XX _ Le variabili sono i dati che devono essere elaborati e necessitano di spazi in memoria, Questi spazi devono essere definiti sia dal punto di vista delle dimensioni che dal punto di vista dell usabilità. Scrivere z = z + v(i) è ammissibile solo se z, i e v(i) sono numeri z è un numero reale i è un numero intero v() è un vettore di numeri reali oppure se le variabili sono tutti testi allora + può indicare concatena le parole / lettere per ottenere una frase Dati Slide 28 of XX _

15 Così come se devo costruire una frase le parole devono essere concatenate opportunamente a formare la frase in questo caso & rappresenta la funzione concatenazione testo = Pippo oggi deve andare & destinazione & per & azione testo è una stringa formata da due costanti la prima di 23 caratteri e la seconda di 5 caratteri e due variabili di lunghezza variabile destinazione è una stringa variabile azione è una stringa variabile Se destinazione e azione sono vuote il messaggio sarà Pippo oggi deve andare per Dati Slide 29 of XX _ Dati Se destinazione = al mercato e azione = fare la spesa Il messaggio sarà Pippo oggi deve andare al mercato per fare la spesa Se destinazione = al cinema e azione = vedere il film appena uscito Il messaggio sarà Pippo oggi deve andare al cinema per vedere il film appena uscito Slide 30 of XX _

16 I dati possono essere definiti in vari modi in VBA Boolean (booleano) Integer Long Single Double Date 2 byte (Falso, Vero) (intero) 2 byte (-32,768: 32,767) (intero lungo) 4 byte (-2,147,483,648:2,147,483,647) (singola precisione) 4 byte Floating-Point (numeri reali) (doppia precisione) 8 byte Floating-Point (numeri reali) (rappresenta una data) Definizione delle variabili 8 bytes FP dal 1/1/1900 al 31/12/9999 parte intera giorni dal riferimento parte decimale, hh.mm.sec, contatore dalla mezzanotte Slide 31 of XX _ Currency String (valutario, monetario) Definizione delle variabili 8 byte Fixed-point (virgola fissa) dove è importante l accuratezza nei calcoli valori -922,337,203,685, a 922,337,203,685, (testo di lunghezza variabile) 1 byte per carattere L byte lunghezza della stringa String * length (testo di lunghezza fissa) length byte è la lunghezza definita dall utilizzatore Variant (assume la definizione data dal valore attuale) boolean, integer, long, single, double, date, currency, string Object (riferimento indirizzo ad un oggetto di office) 4 byte Slide 32 of XX _

17 Definizione delle variabili I dati possono essere definiti in vari modi in Java boolean (Vero, Falso) non hanno valore numerico occupa 1 byte char (contiene caratteri tipo unicode a 2 byte + address) Numerici interi byte (1 byte, 8 bit - valori da -128 a 127) short (2 byte, 16 bit - valori da a 32767) int (4 byte, 32 bit - valori da -2,147,483,648 a 2,147,483,647) long (8 byte, 64 bit valori da a ) Slide 33 of XX _ Definizione delle variabili float long (4 byte, 32 bit numeri reali valori da +/ *10^-45 a +/ *10^38 ) (8 byte, 64 bit numeri reali valori da +/ * 10^-324 a +/ * 10^308 ) Slide 34 of XX _

18 Dati strutturati Dati strutturati o definiti dall utente per la gestione Database struct paziente { long ID char nome [Dimensione] char cognome [Dimensione] date data_nascita date data_evento boolean vac_antipolio boolean vac_antitetanica boolean vac_antrabbica int altezza int peso } Type paziente ID as long nome as string * [Dimensione] cognome as string * [Dimensione] data_nascita as Date data_evento as Date vac_antipolio as Boolen vac_antitetanica as Boolen vac_antrabbica as Boolen altezza as Integer peso as Integer End Type Slide 35 of XX _ Matrici matri(n,m) dove n numero di righe ed m numero di colonne matri(10,8) 10 (n) righe ed 8 (m) colonne elem(1,1) elem(1,2) elem(2,1) elem(2,2) elem(3,1) elem(3,2) elem(4,1) elem(4,2) elem(1,3) elem(2,3) elem(1,4) elem(2,4) elem(1,8) elem(2,8) elem(3,3) elem(3,4) elem(3,8) elem(4,3) elem(4,4) elem(4,8) elem(5,1) elem(5,2) elem(5,3) elem(5,4) elem(5,8) lem(10,1) elem(10,2)elem(10,3) elem(10,4) elem(10,8) Slide 36 of XX _

19 Paradigma orientato agli oggetti Si basa fondamentalmente sulle possibilità grafiche e prevede la presenza di strutture di interazione come nel mondo reale, oggetti come pulsanti, manopole, cursori, etc., metafora del desktop, i quali attivano determinate funzioni. Le istruzioni sono rappresentate dai metodi ed i dati dalle proprietà Gli oggetti / dati possono essere strutturati in classi Slide 37 of XX _ Paradigma orientato agli oggetti Oggetto pulsante Oggetto casella testo Oggetto casella etichetta Oggetto casella testo multi linea Slide 38 of XX _

20 Paradigma orientato agli oggetti proprietà oggetti Oggetto pulsante Oggetto casella testo Oggetto casella etichetta Oggetto casella testo multi linea Slide 39 of XX _ Attività svolta dagli oggetti Slide 40 of XX _

21 Dati e Oggetti Bicicletta Ruota Anteriore Telaio Ruota posteiore Mozzo Cerchione Mozzo Cerchione Class Bicicletta { String Dati Bicicletta Telaio telaio; RuotaA Ruota anteriore RuotaP Ruota posteriore } Class Dati Bicicletta { String Marca String Numero di serie } Class RuotaA { String tipo Mozzo mozzo Cerchione cerchine } Class Telaio { String tipo Numero di serie } Class RuotaP { String tipo Mozzo mozzo Cerchione cerchine } Slide 41 of XX _ Dati e oggetti Bicicletta Ruota Anteriore Telaio Ruota posteiore Mozzo Cerchione Mozzo Cerchione Controlla (bicicletta) richiede Controlla (telaio) prodotto elementare Controlla (ruota anteriore) richiede Controlla (mozzo) prodotto elementare Controlla (cerchione) prodotto elementare Controlla (ruota posteriore) richiede Controlla (mozzo) prodotto elementare Controlla (cerchione) prodotto elementare Slide 42 of XX _

22 Paradigma funzionale Paradigma funzionale Generalmente utilizzati nei simulatori, in questo caso il problema viene inquadrato dal punto di vista della sua risoluzione matematica con blocchi funzionali che effettuano sui dati di ingresso una operazione specifica I dati e le istruzioni tendono ad essere un tutt uno. Slide 43 of XX _ u d dt dx dt Paradigma funzionale dx dt 2 1 ( t) = + x1 generatore x 1 d dt dx 1 dt u grafica x 2 generatore d dt dx 2 dt d dt d x dt Slide 44 of XX _

23 u d dt dx dt 2 1 ( t) = A + B x1 Paradigma funzionale dx dt generatore x 1 d dt dx 1 dt B ' * e i u grafica x 2 generatore d dt dx 2 dt d dt d x dt A '' * e i Slide 45 of XX _ Paradigma dichiarativo Questo tipo di organizzazione è orientata ai dati e alle loro relazioni In genere nella soluzione di un problema si stabilisce cosa si vuole ottenere nella prima fase dell analisi e quindi con la programmazione il come ciò che si vuole possa essere raggiunto. Nella programmazione dichiarativa invece viene descritta nella base di dati l asserzione che lega degli argomenti e le relazioni che legano le varie asserzioni. Le richieste sono solo il cosa si vuole ed è compito del traduttore cercare il modo con cui risolvere il problema e farlo eseguire al processore. Slide 46 of XX _

24 Paradigma dichiarativo La realtà può essere considerata come composta da Fatto : (asserzione) <predicato> (argomento, argomento, argomento, ) Regola : (clausole) relazioni condizionate fra oggetti predicato argomenti Luca è padre di Giovanni padre (Luca, Giovanni) asserzione Giovanni è figlio di Luca Marco possiede la moto Marco possiede il computer possiede (Marco, moto) possiede (Marco, computer) Struttura Dichiarazione dei fatti (database) Definizione delle regole tra i vari predicati Porre domande sui fatti [? possiede (Luca,moto) = falso ] [? possiede (Marco,moto) = vero ] [? possiede (marco,y) y = moto, y = computer ] Slide 47 of XX _ Paradigma dichiarativo Ad esempio plus (a,b,c) dichiara una somma tra a e b con risultato su c plus (10,5,c) riempirà c con 15 plus (10,b,15) riempirà b con 5 plus (a,5,15) riempirà a con 10 ma dato l asserto di base c = a + b allora b = c a oppure a = c b Slide 48 of XX _

25 Paradigma dichiarativo Le funzioni dichiarative costituiscono la base di dati : padre (padre,figlio) madre(madre,figlio) DataBase e relazione padre (Osvaldo,Pietro) padre (Giulio,Giuseppe) padre (Pietro,Francesca) padre (Pietro,Carlo) padre (Guiscardo,Pietro) padre (Giulio,Aldo) padre (Pietro,Adelaide) padre (Ernesto,Osvaldo) madre (Monica,Carlotta) madre (Carlotta,Elvira) madre (Monica,Giuseppe) madre (Eva,Milena) madre (Elvira,Carlo) madre (Francesca,Milena) madre (Eva,Giuseppe) Slide 49 of XX _ Paradigma dichiarativo genitore(x,y) :- padre(x,y). genitore(x,y) :- madre(x,y). antenato(x,y) :- genitore(x,y). antenato(x,y) :- genitore(x,z), antenato(z,y). antenato(x,y) :- genitore(x,z), antenato(z,w), antenato(w,y) fratello_sorella(x,y) :- padre(z,x), padre(z,y), madre(w,x), madre(w,y), X \= Y.? madre (x,milena) x=eva, x=francesca? padre (Pietro,y) y=francesca, y=carlo, y=adelaide Slide 50 of XX _

26 Paradigma dichiarativo Le funzioni dichiarative costituiscono la base di dati : genitore (genitore,figlio) padre (Osvaldo,Pietro) padre (Giulio,Giuseppe) padre (Pietro,Francesca) padre (Pietro,Carlo) padre (Guiscardo,Pietro) padre (Giulio,Aldo) padre (Pietro,Adelaide) padre (Ernesto,Osvaldo)? padre (Pietro,y) y=francesca y=carlo y=adelaide madre (Monica,Carlotta) madre (Carlotta,Elvira) madre (Monica,Giuseppe) madre (Eva,Milena) madre (Elvira,Carlo) madre (Francesca,Milena) madre (Eva,Giuseppe)? madre (x,milena) x=eva x=francesca Slide 51 of XX _ Paradigma dichiarativo? genitore (x,giuseppe) x=giulio, x=monica, x=eva? antenato (x,carlo) x=pietro, x=osvaldo, x=ernesto, x= Guiscardo, x=elvira, x=carlotta, x=monica padre (Pietro,Carlo), padre (Osvaldo,Pietro), padre (Ernesto,Osvaldo) padre (Guiscardo,Pietro) madre (Elvira,Carlo), madre (Carlotta,Elvira), madre (Monica,Carlotta) Slide 52 of XX _

27 Paradigma dichiarativo Le funzioni dichiarative costituiscono la base di dati : genitore (genitore,figlio) padre (Osvaldo,Pietro) padre (Giulio,Giuseppe) padre (Pietro,Francesca) padre (Pietro,Carlo) padre (Guiscardo,Pietro) padre (Giulio,Aldo) padre (Pietro,Adelaide) padre (Ernesto,Osvaldo) madre (Monica,Carlotta) madre (Carlotta,Elvira) madre (Monica,Giuseppe) madre (Eva,Milena) madre (Elvira,Carlo) madre (Francesca,Milena) madre (Eva,Giuseppe)? genitore (x,giuseppe) x=giulio x=monica x=eva Slide 53 of XX _ Paradigma dichiarativo Le funzioni dichiarative costituiscono la base di dati : genitore (genitore,figlio) padre (Osvaldo,Pietro) padre (Giulio,Giuseppe) padre (Pietro,Francesca) padre (Pietro,Carlo) padre (Guiscardo,Pietro) padre (Giulio,Aldo) padre (Pietro,Adelaide) padre (Ernesto,Osvaldo) madre (Monica,Carlotta) madre (Carlotta,Elvira) madre (Monica,Giuseppe) madre (Eva,Milena) madre (Elvira,Carlo) madre (Francesca,Milena) madre (Eva,Giuseppe)? antenato (x,carlo) x=pietro x=elvira x=osvaldo x= Guiscardo x=carlotta x=ernesto x=monica Slide 54 of XX _

28 Linguaggi per la manipolazione dei dati In molti casi non sono le operazioni matematiche ad essere la principale applicazione ma la gestione di informazioni organizzate in tabelle relazionate tra loro con un gran numero di informazioni nei DBMS (Database Management System) Questa problematica estremamente comune ai grandi archivi ha portato allo sviluppo di linguaggi specifici per la gestione delle tabelle a modello relazionale chiamati SQL (Structured Query Language) che hanno funzioni di: Creazione, inserimento, aggiornamento, cancellazione, ricerca ed estrazione di dati tra loro correlati. Slide 55 of XX _ DBMS Un database è normalmente formato da più tabelle ed ogni tabella e definita dal suo schema che sono l insieme dei campi da cui essa è formata e che rappresenta anche la tipologia ed eventuali limitazioni sui dati definiti nei campi. I dati presenti nei campi sono gli item successivi definiti nello schema. Slide 56 of XX _

29 Tutti gli item dello schema costituiscono il record. Tanti record costituiscono la tabella. Tante tabelle correlate costituiscono un database. Nei DataBase sono anche inserite le eventuali relazioni tra le tabelle al fine di non dover duplicare dati presenti nelle tabelle di competenza (caratteristiche degli item della tabella) Slide 57 of XX _ DBMS DataBase Tabella 1 Tabella 2 Tabella 3 Tabella 4 Record 1 Record 2 Record n Record 1 Record 2 Record m Record 1 Record 2 Record h Record 1 Record 2 Record k Record: key Item 1 Item 2 Item g Record: key Item 1 Item 2 Item f Record: key Item 1 Item 2 Item p Record: key Item 1 Item 2 Item q Slide 58 of XX _

30 DBMS Ospedaliero DB Medici DB Infermi DB Pazienti DB Reparti Record 1 Record 2 Record m Record 1 Record 2 Record n Record 1 Record 2 Record p Record 1 Record 2 Record q Record: Id Cognome Nome Specializzazione Reparto Id Cognome Nome Specializzazione Reparto Id Cognome Nome Dt Nascita Dt Ricovero Reparto Medico Record: Id Nome Reparto Letti Slide 59 of XX _ DBMS Slide 60 of XX _

31 DBMS Tabella Slide 61 of XX _ Relazioni Slide 62 of XX _

32 DBMS La funzione principale dei data base è quella di selezionare i dati e fornirli aggregati in secondo le richieste dell utente Select Pazienti.Cognome From Where And DB_Pazienti DB_Pazienti.Rep1= Urologia ( Med_Rif = Lorenzetti Or Med_Sost = Galli ) Order by Cognome Slide 63 of XX _ Linguaggi ipertestuali HTML Hanno avuto un notevole impulso con l avvento di INTERNET in quanto: Logica di tipo reticolare nella lettura e acquisizione dell informazione La logica lineare con cui sono scritti i testi spesso non è in accordo con quella del lettore. Il lettore mentre legge può avere la necessità, curiosità di chiarire, approfondire parti del discorso, oppure chi ha scritto la pagina può avere la necessità di indirizzare il lettore verso altri siti HTML (HyperText Markup Language) URL (Uniform Resource Locators) Slide 64 of XX _

33 HTML (Hypertext Markup Language) Il formato HTML prevede la presenza dei solo testo e comandi (denominati markup o tag) che rappresentano i comandi che il software browser interpreterà per realizzare la pagina da visualizzare Questi comandi sono inseriti con due simboli delimitatori di inizio e fine <nome_del_tag> seguiti da testo o comandi più complessi </nome_del_tag> Es. <U> sottolineato </U> <I> italico </I> <EM> enfatizzato </EM> <BR> ritorno a capo <P> ritorno a capo con linea vuota <BODY> corpo del testo </BODY> <UL> lista non numerato </UL> <LI> elemento di lista </LI> <A HREF= path\...\indirizzo >Partite </A> anchor point <IMG SRC= path\...\nome immagine > Slide 65 of XX _ Linguaggi ipertestuali HTML Slide 66 of XX _

34 HTML (Hypertext Markup Language) Utilizzando la logica della definizione si possono costruire degli elenchi <UL> <LI> D. Sciuto, G. Buonanno, L. Mari, W. Fornaciari <EM>Introduzione ai sistemi Informatici</EM> McGraw-Hill Italia 2008 <LI><U><I>autori <EM> Informatica </EM> Editore </I></U> </UL> Slide 67 of XX _ XML ( Xtensible Markup Language) <LIBRO> <AUTORE> D. Sciuto</AUTORE> <AUTORE> G. Buonanno </AUTORE> <AUTORE> L. Mari </AUTORE> <AUTORE> W. Fornaciari </AUTORE> <TITOLO> EM>Introduzione ai sistemi Informatici </TITOLO> <EDITORE> McGraw-Hill Italia </EDITORE> <EM>Introduzione ai sistemi Informatici</EM> McGraw-Hill Italia 2008 </LIBRO> UL LI EM lista non numerata eleneto di lista enfatizzato Il simbolo / indica file della funzione Slide 68 of XX _

35 DTD (Document Type Definition) <! Bibliografia ----> <BIB> <LIBRO nome= info > <AUTORE id = dony > D. Sciuto</AUTORE> <AUTORE id = jack > G. Buonanno </AUTORE> <AUTORE id = luca > L. Mari </AUTORE> <AUTORE id = mau > W. Fornaciari </AUTORE> <TITOLO> EM>Introduzione ai sistemi Informatici </TITOLO> <EDITORE> McGraw-Hill Italia </EDITORE> <ANNO> 2008 </LIBRO> <LIBRO nome= DataBase > < AUTORE idref = luca <TITOLO> Accesso a database via web</titolo> <EDITORE> Apogeo </EDITORE> <ANNO> 2001</ANNO> </LIBRO> </BIB> Slide 69 of XX _ Esempio di dati per il DB medico scientifico PubMed Slide 70 of XX _

36 Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica

Corso di Informatica

Corso 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

Dettagli

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

Dettagli

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Il Software e Il Sistema Operativo Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Cosa Impareremo Programmi e Processi Struttura del Sistema Operativo Sviluppo di Programmi I files e la loro

Dettagli

Introduzione alla programmazione in C

Introduzione 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

Dettagli

1. BASI DI DATI: GENERALITÀ

1. BASI DI DATI: GENERALITÀ 1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente

Dettagli

Il database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

Dettagli

I Sistemi Informativi

I Sistemi Informativi I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e

Dettagli

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi Il Software Il software impiegato su un computer si distingue in: Software di sistema Sistema Operativo Compilatori per produrre programmi Software applicativo Elaborazione testi Fogli elettronici Basi

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

ISTITUTO TECNICO ECONOMICO MOSSOTTI

ISTITUTO TECNICO ECONOMICO MOSSOTTI CLASSE III INDIRIZZO S.I.A. UdA n. 1 Titolo: conoscenze di base Conoscenza delle caratteristiche dell informatica e degli strumenti utilizzati Informatica e sistemi di elaborazione Conoscenza delle caratteristiche

Dettagli

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle

Dettagli

Volumi di riferimento

Volumi di riferimento Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di

Dettagli

Software e Linguaggi di programmazione

Software e Linguaggi di programmazione Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica Software e Linguaggi di programmazione Interattività Software 1 SOFTWARE elemento morbido SOFTWARE

Dettagli

Sistemi Informativi e Basi di Dati

Sistemi Informativi e Basi di Dati Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli

Dettagli

Access. P a r t e p r i m a

Access. P a r t e p r i m a Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di

Dettagli

Linguaggi per COMUNICARE. Il linguaggio è un sistema codificato di segni che consente la comunicazione, intesa come scambio di informazioni

Linguaggi per COMUNICARE. Il linguaggio è un sistema codificato di segni che consente la comunicazione, intesa come scambio di informazioni Linguaggi per COMUNICARE Il linguaggio è un sistema codificato di segni che consente la comunicazione, intesa come scambio di informazioni Sintassi e semantica dei linguaggi Un informazione può : Essere

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report Facoltà di Lingue e Letterature Straniere Le QUERY 2 Che cos è una Query? Una Query rappresenta uno strumento per interrogare un database.

Dettagli

Dall 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 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

Dettagli

Le Basi di Dati. Le Basi di Dati

Le Basi di Dati. Le Basi di Dati Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per

Dettagli

Dispensa di database Access

Dispensa di database Access Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di

Dettagli

Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009. Prof. Raffaele Nicolussi

Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009. Prof. Raffaele Nicolussi Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via B. Castiglione 59-00142 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni

Dettagli

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

INFORMATICA 1 L. Mezzalira

INFORMATICA 1 L. Mezzalira INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello

Dettagli

Informatica I per la. Fisica

Informatica I per la. Fisica Corso di Laurea in Fisica Informatica I per la Fisica Lezione: Software applicativo II Fogli elettronici e Data Base Software: software di sistema (BIOS) sistema operativo software applicativo ROM Dischi

Dettagli

EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO

EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO Linguaggi di programmazione classificati in base alle loro caratteristiche fondamentali. Linguaggio macchina, binario e fortemente legato all architettura. Linguaggi

Dettagli

FONDAMENTI di INFORMATICA L. Mezzalira

FONDAMENTI di INFORMATICA L. Mezzalira FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software

Dettagli

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014 Archivi e database Prof. Michele Batocchi A.S. 2013/2014 Introduzione L esigenza di archiviare (conservare documenti, immagini, ricordi, ecc.) è un attività senza tempo che è insita nell animo umano Primi

Dettagli

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,

Dettagli

I database relazionali (Access)

I database relazionali (Access) I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale

Dettagli

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

LICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Prof Miritello Rita

LICEO SCIENTIFICO LEONARDO DA VINCI - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Prof Miritello Rita LICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Modulo 1: Introduzione all informatica Fondamenti di teoria della elaborazione

Dettagli

Normografi di programmazione anni 70

Normografi di programmazione anni 70 Normografi di programmazione anni 70 Informatica - Ingegneria Medica -2015 - Franco Del Bolgia Slide 1 of 77 76 Normografi di programmazione anni 70 Informatica - Ingegneria Medica -2015 - Franco Del Bolgia

Dettagli

Introduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza

Introduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma La Sapienza WARNING Questo canale è solo per studenti di Fisica il cui cognome inizia con le lettere A-D Laboratorio

Dettagli

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: 1 SOFTWARE È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: SOFTWARE DI SISTEMA (o di base), che deve gestire le funzioni

Dettagli

Introduzione ai database relazionali

Introduzione ai database relazionali Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita

Dettagli

La Macchina Virtuale

La Macchina Virtuale Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2008/2009 Docente: ing. Salvatore

Dettagli

Fondamenti di Informatica PROBLEMI E ALGORITMI. Fondamenti di Informatica - D. Talia - UNICAL 1

Fondamenti di Informatica PROBLEMI E ALGORITMI. Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica PROBLEMI E ALGORITMI Fondamenti di Informatica - D. Talia - UNICAL 1 Specifica di un algoritmo Primo approccio, scrittura diretta del programma: la soluzione coincide con la codifica

Dettagli

Linguaggio C. Fondamenti. Struttura di un programma.

Linguaggio 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

Dettagli

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell

Dettagli

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle

Dettagli

Organizzazione delle informazioni: Database

Organizzazione delle informazioni: Database Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)

Dettagli

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. (Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE

Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE hardware Firmware, software memorizzato su chip di silicio Sistema Operativo venduto con l, comprende vari programmi di gestione del sistema Applicativo,

Dettagli

DATABASE RELAZIONALI

DATABASE RELAZIONALI 1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.

Dettagli

Corso di INFORMATICA 2 (Matematica e Applicazioni)

Corso di INFORMATICA 2 (Matematica e Applicazioni) Università di Camerino Scuola di Scienze e Tecnologie Sezione di Matematica Corso di INFORMATICA 2 (Matematica e Applicazioni) Anno Accademico 2014/15 3 Anno Primo Semestre Docenti: Paolo Gaspari Roberto

Dettagli

Le variabili. Olga Scotti

Le 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.

Dettagli

DATABASE. www.andreavai.it

DATABASE. www.andreavai.it Cos'è un database? Quando si usa? Differenze con i fogli elettronici Le tabelle: record, campi, tipi di dati Chiavi e indici Database relazionali (R-DBMS) Relazioni uno-a-uno Relazioni uno-a-molti Relazioni

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni Introduzione Ai Data Bases Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni I Limiti Degli Archivi E Il Loro Superamento Le tecniche di gestione delle basi di dati nascono

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 2.1 Comandi sui database 1 Prerequisiti Introduzione ai DB Linguaggi per database Tipi fondamentali di dati 2 1 Introduzione In questa Unità introduciamo il linguaggio

Dettagli

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica (Industriale), Chimica, Elettrica, e Meccanica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011

Dettagli

Descrizione di un algoritmo

Descrizione di un algoritmo Descrizione di un algoritmo Un algoritmo descrive due tipi fondamentali di oper: calcoli ottenibili tramite le oper primitive su tipi di dato (valutazione di espressioni) che consistono nella modifica

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Programmazione L attività con cui si predispone l elaboratore ad eseguire un particolare insieme di azioni su particolari dati, allo scopo di risolvere un problema Dati Input

Dettagli

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

ARCHIVI E DATABASE (prof. Ivaldi Giuliano) ARCHIVI E DATABASE (prof. Ivaldi Giuliano) Archivio: è un insieme di registrazioni (o records) ciascuna delle quali è costituita da un insieme prefissato di informazioni elementari dette attributi (o campi).

Dettagli

Software. Algoritmo. Algoritmo INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Software. Algoritmo. Algoritmo INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) Gli elaboratori utilizzano memoria per Dati da elaborare Istruzioni eseguite dall elaboratore software differenti risoluzione problemi differenti Algoritmo

Dettagli

Sistema operativo: Gestione della memoria

Sistema operativo: Gestione della memoria Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi 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

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un programma, cioè di una sequenza di istruzioni descritte nel linguaggio interpretabile dal calcolatore

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

Al 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,

Dettagli

Alcune regole di base per scrivere un programma in linguaggio C

Alcune 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

Dettagli

Strumenti di modellazione. Gabriella Trucco

Strumenti di modellazione. Gabriella Trucco Strumenti di modellazione Gabriella Trucco Linguaggio di modellazione Linguaggio formale che può essere utilizzato per descrivere (modellare) un sistema Il concetto trova applicazione soprattutto nell

Dettagli

Introduzione. Informatica B. Daniele Loiacono

Introduzione. Informatica B. Daniele Loiacono Introduzione Informatica B Perchè studiare l informatica? Perchè ha a che fare con quasi tutto quello con cui abbiamo a che fare ogni giorno Perché è uno strumento fondamentale per progettare l innovazione

Dettagli

Gestione ed analisi di base dati nell epidemiologia. delle malattie infettive

Gestione ed analisi di base dati nell epidemiologia. delle malattie infettive Università degli Studi di Torino - Facoltà di Medicina Veterinaria Laboratorio di epidemiologia delle malattie infettive Scuola Specializzazione in Sanità Animale, Allevamento e Produzioni Zootecniche

Dettagli

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Data Base. Master Bio Info Reti e Basi di Dati Lezione 6 Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica

Dettagli

Introduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza

Introduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma La Sapienza WARNING Questo canale è solo per studenti di Fisica il cui cognome inizia con le lettere A-C TUTTAVIA

Dettagli

Lezione 8. La macchina universale

Lezione 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

Dettagli

I file di dati. Unità didattica D1 1

I 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à

Dettagli

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità

Dettagli

Le query. Lezione 6 a cura di Maria Novella Mosciatti

Le query. Lezione 6 a cura di Maria Novella Mosciatti Lezione 6 a cura di Maria Novella Mosciatti Le query Le query sono oggetti del DB che consentono di visualizzare, modificare e analizzare i dati in modi diversi. Si possono utilizzare query come origine

Dettagli

Cosa è un foglio elettronico

Cosa è un foglio elettronico Cosa è un foglio elettronico Versione informatica del foglio contabile Strumento per l elaborazione di numeri (ma non solo...) I valori inseriti possono essere modificati, analizzati, elaborati, ripetuti

Dettagli

Appunti di Sistemi Elettronici

Appunti di Sistemi Elettronici Prof.ssa Maria Rosa Malizia 1 LA PROGRAMMAZIONE La programmazione costituisce una parte fondamentale dell informatica. Infatti solo attraverso di essa si apprende la logica che ci permette di comunicare

Dettagli

Il Software. Il software del PC. Il BIOS

Il Software. Il software del PC. Il BIOS Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Dettagli

Data Base. Prof. Filippo TROTTA

Data Base. Prof. Filippo TROTTA Data Base Definizione di DataBase Un Database può essere definito come un insieme di informazioni strettamente correlate, memorizzate su un supporto di memoria di massa, costituenti un tutt uno, che possono

Dettagli

Funzioni in C. Violetta Lonati

Funzioni 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

Dettagli

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System) (DataBase Management System) Sistemi di ges3one di basi di da3 Un Database Management System è un sistema software progettato per consentire la creazione e manipolazione efficiente di database (collezioni

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo

Dettagli

EXPLOit Content Management Data Base per documenti SGML/XML

EXPLOit Content Management Data Base per documenti SGML/XML EXPLOit Content Management Data Base per documenti SGML/XML Introduzione L applicazione EXPLOit gestisce i contenuti dei documenti strutturati in SGML o XML, utilizzando il prodotto Adobe FrameMaker per

Dettagli

Corso di Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati) Corso di Informatica (Basi di Dati) Lezione 1 (12 dicembre 2008) Introduzione alle Basi di Dati Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof. Carlo Batini,

Dettagli

Università degli Studi di Ferrara - A.A. 2014/15 Dott. Valerio Muzzioli ORDINAMENTO DEI DATI

Università degli Studi di Ferrara - A.A. 2014/15 Dott. Valerio Muzzioli ORDINAMENTO DEI DATI ORDINAMENTO DEI DATI Quando si ordina un elenco (ovvero una serie di righe contenenti dati correlati), le righe sono ridisposte in base al contenuto di una colonna specificata. Distinguiamo due tipi di

Dettagli

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione Programma del Corso Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione (I prova scritta) (II prova scritta) Interazione fra linguaggi di programmazione e basi di dati Cenni

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

Fondamenti di Informatica Ingegneria Clinica Lezione 19/10/2009. Prof. Raffaele Nicolussi

Fondamenti di Informatica Ingegneria Clinica Lezione 19/10/2009. Prof. Raffaele Nicolussi Fondamenti di Informatica Ingegneria Clinica Lezione 19/10/2009 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via B. Castiglione 59-00142 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni

Dettagli

Algoritmi, dati e programmi

Algoritmi, dati e programmi 1 Algoritmi, dati e programmi 2 Informatica Informatica: Scienza che studia l informazione e la sua elaborazione. informazione rappresentazione dell informazione (dati) dati elaborazione dei dati tramite

Dettagli

Introduzione al data base

Introduzione al data base Introduzione al data base L Informatica è quella disciplina che si occupa del trattamento automatico dei dati con l ausilio del computer. Trattare i dati significa: raccoglierli, elaborarli e conservarli

Dettagli

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,

Dettagli

Il software e la programmazione

Il software e la programmazione Il software e la programmazione Concetti base sul software Elementi di programmazione Cenni sul linguaggio Pascal Che cosa è il software Determina ciò che un computer può fare Include istruzioni memorizzate

Dettagli

CONCETTO DI ANNIDAMENTO

CONCETTO DI ANNIDAMENTO LEZIONE14 SQL ANNIDAMENTI PAG. 1 / 5 PROF. ANDREA ZOCCHEDDU LEZIONE14 SQL ANNIDAMENTI CONCETTO DI ANNIDAMENTO LINGUAGGIO SQL QUERY ANNIDATE Per annidamento si intende la possibilità che, all interno di

Dettagli

Informatica per le discipline umanistiche 2 lezione 10

Informatica per le discipline umanistiche 2 lezione 10 Informatica per le discipline umanistiche 2 lezione 10 Parte III: il computer come strumento per l interazione e la comunicazione Si è parlato di identità Parte III: il computer come strumento per l interazione

Dettagli

Base di dati e sistemi informativi

Base di dati e sistemi informativi Base di dati e sistemi informativi Una base di dati è un insieme organizzato di dati opportunamente strutturato per lo svolgimento di determinate attività La base di dati è un elemento fondamentale per

Dettagli

IL SOFTWARE. Giada Agostinacchio Classe 2^ Beat ISIS G.Meroni Lissone Anno Scolastico 2007/2008

IL SOFTWARE. Giada Agostinacchio Classe 2^ Beat ISIS G.Meroni Lissone Anno Scolastico 2007/2008 IL SOFTWARE Giada Agostinacchio Classe 2^ Beat ISIS G.Meroni Lissone Anno Scolastico 2007/2008 CHE COS È IL SOFTWARE In Informatica il termine Software indica l insieme dei programmi che consentono un

Dettagli

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI!

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Fondamenti di Informatica Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Finalità: Fornire gli elementi di base dei concetti che sono di fondamento all'informatica Informazioni Pratiche ORARIO:

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

Gli algoritmi: definizioni e proprietà

Gli 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

Dettagli