Java? Sì, grazie. Scopo del corso

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Java? Sì, grazie. Scopo del corso"

Transcript

1 Modulo di Java? Sì, grazie Il linguaggio di Internet? Portabilità su qualunque piattaforma (non solo calcolatori): It works everywhere Supporto e disponibilità di strumenti, librerie e documentazione garantiti Object-oriented puro e moderno Costante evoluzione Scopo del corso Il corso ha lo scopo di trattare i fondamenti della programmazione, usando il linguaggio Java come strumento, pertanto: si tratteranno solo gli aspetti fondamentali del linguaggio si utilizzerà la piattaforma SE (Standard Edition) ) adatta allo sviluppo di applicazioni su Personal Computer Primi passi con Java 1

2 Modulo di Cos è la programmazione? La realizzazione di un programma comprende: L analisi del problema da risolvere Il progetto delle strutture dati e degli algoritmi per risolverlo La codifica delle strutture e degli algoritmi progettati in un linguaggio di programmazione La documentazione del codice prodotto La verifica e validazione del codice prodotto La manutenzione del codice prodotto Cosa non è la programmazione? La programmazione non è solo la scrittura di codice : prima la testa poi la tastiera! La programmazione non è il lavoro degli informatici : l ingegnere informatico può svolgere svariati ruoli professionali, in alcuni dei quali l attività di programmazione (e in particolare la scrittura di codice) non è predominante Primi passi con Java 2

3 Modulo di Perché imparare a programmare? La necessità di affrontare problemi di programmazione è presente in qualunque area dell Ingegneria dell Informazione (Elettronica, Informatica, Telecomunicazioni, Automazione) Un ingegnere dell area dell Informazione DEVE saper programmare (anche se non fa il programmatore a tempo pieno) Saper programmare è un notevole valore aggiunto per un professionista in qualunque area dell Ingegneria (e non solo) Roadmap 0. Primi passi con Java Introduzione alla tecnologia Java Primi passi con Java 3

4 Modulo di La tecnologia Java Con il termine Java technology si fa riferimento a due concetti ben distinti: Un linguaggio di programmazione Un insieme di piattaforme/tecnologie che offrono strumenti e permettono l utilizzo di programmi scritti in Java in diverse situazioni (dalle applicazioni Web ai cellulari) Le piattaforme Java: SE Java SE (Standard Edition): piattaforma base destinata alla realizzazione di applicazioni "stand-alone" alone" su calcolatori convenzionali e simili Due componenti principali JRE (Java Runtime Environment): strumenti per l esecuzione di programmi Java già sviluppati JDK (Java Development Kit): strumenti base per lo sviluppo di programmi (include JRE) Primi passi con Java 4

5 Modulo di Le piattaforme Java: SE Altre piattaforme/tecnologie Java Java EE (Enterprise( Edition): piattaforma molto estesa per applicazioni client-server operanti in rete (web e non solo) Java ME (Micro( Edition): piattaforma ridotta per applicazioni su dispositivi dalle risorse limitate (cellulari, palmari, ) Java FX: tecnologia molto recente orientata a scripting e dispositivi mobili Primi passi con Java 5

6 Modulo di Altre piattaforme/tecnologie Java Java Embedded: : varianti di Java SE e Java ME per applicazioni embedded (ovvero nascoste dentro dispositivi di ogni genere dalle stampanti alle automobili) Java Card: versione ridottissima per Smart Card Java TV Java DB Evoluzione di Java SE 1996: JDK : JDK : Java 2 (SDK 1.2) 1999: J2SE 1.3 (SDK 1.3) 2002: J2SE 1.4 (SDK 1.4) 2004: J2SE (1.)5.0 (JDK 5.0) Tiger Dicembre 2006: Java SE 6 (JDK 6) Luglio 2011: Java 7 (JDK 7) Primi passi con Java 6

7 Modulo di Evoluzione di Java SE Le variazioni introdotte nelle versioni da 1.2 a 1.4 non hanno riguardato gli aspetti fondamentali del linguaggio trattati nel corso La versione 1.5 ha introdotto variazioni significative anche su aspetti fondamentali (che non sono state ancora recepite in tutti i contesti applicativi) La versione 6 non introduce variazioni sostanziali La versione 7 introduce alcune variazioni limitate Il materiale presentato nei lucidi fa riferimento alle versioni (con indicazioni sulle differenze rispetto alle versioni precedenti ed alla versione 7) Roadmap 0. Primi passi con Java Introduzione alla tecnologia Java Il primo programma Java Primi passi con Java 7

8 Modulo di Il primo programma Java public class Buongiorno public static void main (String args[]) System.out.println println("buongiorno!"); Il primo programma Java E costituito da una sola classe la cui definizione consiste del solo metodo main L esecuzione di qualunque applicazione Java stand-alone alone coincide con l esecuzione del metodo main di una classe Il metodo main in questo esempio è costituito da una sola istruzione di stampa a video Primi passi con Java 8

9 Modulo di Parola riservata (modificatore di accesso alla classe) Il primo programma Java public class Buongiorno public static void main (String args[]) Parola riservata che precede la definizione di una classe Nome della classe System.out.println println("buongiorno!"); Graffe che racchiudono la definizione della classe (body o corpo della classe) Definizione del metodo main Il metodo main Intestazione (detta anche signature o firma) del metodo main public static void main (String args[]) System.out.println println("buongiorno!") ; Graffe che racchiudono il corpo (body) del metodo Unica istruzione contenuta nel corpo del metodo main Fine istruzione Primi passi con Java 9

10 Modulo di Il metodo main Parola riservata (modificatore di accesso al metodo) Parola riservata (livello di definizione del metodo) Parola riservata (tipo restituito del metodo) public static void main (String args[]) Nome del metodo Lista argomenti (o parametri) formali del metodo main System.out.println ( "Buongiorno!" ) ; Invocazione del metodo predefinito println per la stampa a video Lista argomenti (o parametri) attuali passati al metodo println Dalla carta al calcolatore: modello base Produzione del codice sorgente (file.java editor qualunque) Compilazione del codice sorgente: produzione del bytecode (file.class compilatore) Esecuzione = interpretazione del bytecode da parte di un interprete software (JVM: Java Virtual Machine) Primi passi con Java 10

11 Modulo di Who is who PROGRAMMATORE SISTEMA OPERATIVO codice sorgente COMPILATORE codice intermedio (bytecode) INTERPRETE (JVM) chiamate di sistema instruction set HARDWARE comprensione del problema conoscenze tecniche creatività Parte indipendente Parte dipendente dalla piattaforma hardware/software di base Roadmap 0. Primi passi con Java Introduzione alla tecnologia Java Il primo programma Java Uso di più classi Primi passi con Java 11

12 Modulo di Il secondo programma Java Un programma Java è costituito da una o (normalmente) più classi La capacità di progettare e sviluppare programmi di media complessità costituiti da più classi è l obiettivo formativo finale del corso da raggiungere per passi successivi Cominciamo con un semplice esempio Il secondo programma Java public class Ossequioso public void saluta () System.out.println println("buongiorno!"); Primi passi con Java 12

13 Modulo di Parola riservata (modificatore di accesso alla classe) La classe Ossequioso public class Ossequioso Parola riservata che precede la definizione di una classe Nome della classe public void saluta () System.out.println println("buongiorno!"); Graffe che racchiudono la definizione della classe (body o corpo della classe) Definizione del metodo saluta Il metodo saluta Intestazione (detta anche signature o firma) del metodo saluta public void saluta () System.out.println println("buongiorno!") ; Graffe che racchiudono il corpo (body) del metodo Unica istruzione contenuta nel corpo del metodo saluta Fine istruzione Primi passi con Java 13

14 Modulo di public Il metodo saluta Parola riservata (modificatore di accesso al metodo) Il livello di definizione del metodo è implicito Parola riservata (tipo restituito del metodo) Nome del metodo void saluta () Lista (vuota) di argomenti (o parametri) formali del metodo saluta System.out.println ( "Buongiorno!"); Invocazione del metodo predefinito println per la stampa a video Lista argomenti (o parametri) attuali passati al metodo println La classe Ossequioso La classe Ossequioso (come la maggior parte delle classi Java) non è pensata per essere eseguita da sola (non ha main program) La sua definizione consiste di un solo metodo di nome saluta La classe Ossequioso dovrà essere utilizzata insieme ad (almeno) un altra classe Primi passi con Java 14

15 Modulo di La classe Ossequioso Normalmente una classe rappresenta il prototipo generico di una famiglia di oggetti simili La (per ora fin troppo semplice) classe Ossequioso rappresenta il prototipo di tutti gli oggetti capaci di trasmettere un saluto (per ora sempre lo stesso) Un elemento concreto di una classe viene detto istanza della classe La seconda classe del programma dovrà creare un istanza di Ossequioso ed invocare su di essa l esecuzione del metodo saluta Il secondo programma Java public class BuongiornoMain public static void main (String [ ] args) Ossequioso maggiordomo; maggiordomo = new Ossequioso(); maggiordomo.saluta(); Primi passi con Java 15

16 Modulo di Parola riservata (modificatore di accesso alla classe) La classe BuongiornoMain public class BuongiornoMain Parola riservata che precede la definizione di una classe Nome della classe public static void main (String args[]) Ossequioso maggiordomo; maggiordomo = new Ossequioso(); maggiordomo.saluta(); Graffe che racchiudono la definizione della classe (body o corpo della classe) Definizione del metodo main La classe BuongiornoMain La classe BuongiornoMain contiene il solo metodo main e può quindi essere "eseguita" Il metodo main di BuongiornoMain richiede l esistenza della classe Ossequioso e rappresenta uno dei più tipici schemi di utilizzo di una classe da parte di un altra Primi passi con Java 16

17 Modulo di La classe BuongiornoMain public static void main (String args[]) Definizione di una variabile Ossequioso maggiordomo; Assegnazione della variabile maggiordomo = new Ossequioso(); maggiordomo.saluta(); Invocazione del metodo saluta Definizione di una variabile Ossequioso maggiordomo ; Tipo della variabile Nome della variabile Viene definita una variabile di nome maggiordomo e di tipo Ossequioso La definizione di una variabile di tipo Ossequioso non porta a creare automaticamente un istanza di Ossequioso La variabile maggiordomo per ora e solo una locazione di memoria priva di contenuto e predisposta per contenere un riferimento ad un oggetto di tipo Ossequioso Primi passi con Java 17

18 Modulo di Assegnazione maggiordomo = new Ossequioso(); Nome della variabile che riceve l assegnazione Operatore di assegnazione Valore assegnato alla variabile Viene assegnato un valore alla variabile maggiordomo Il valore assegnato e il risultato dell uso dell operatore new L operatore new Parola riservata che indica la costruzione di un nuovo oggetto new Ossequioso(); Nome di una classe L oggetto costruito e istanza di una classe e ne rispecchia la definizione Lista degli argomenti utilizzati per la costruzione (in questo caso nessuno) Tecnicamente l operatore new invoca uno dei costruttori della classe passandogli una lista di argomenti Se il programmatore non definisce costruttori ne esiste uno di default default che fa il minimo indispensabile Primi passi con Java 18

19 Modulo di Costruzione di un oggetto CODICE Ossequioso maggiordomo; MEMORIA maggiordomo null maggiordomo=new Ossequioso(); saluta()... Istanza della classe Ossequioso riferita dalla variabile maggiordomo Invocazione di un metodo maggiordomo.saluta(); Nome di una variabile che riferisce un oggetto Separatore Nome di un metodo definito nella classe di cui l oggetto e istanza Lista argomenti attuali passati al metodo A partire da una variabile che riferisce un oggetto si può invocare un metodo dell oggetto La definizione del metodo è quella stabilita nella classe di cui l oggetto è istanza La lista degli argomenti attuali è vuota come lo era quella degli argomenti formali Primi passi con Java 19

20 Modulo di... Invocazione di un metodo CODICE MEMORIA maggiordomo maggiordomo.saluta(); saluta()... Roadmap 0. Primi passi con Java Introduzione alla tecnologia Java Il primo programma Java Uso di più classi Attributi e costruttori Primi passi con Java 20

21 Modulo di Definizione di attributi costanti Non è consigliabile cablare dentro il codice il valore prefissato di un dato Nella classe Ossequioso il dato cablato nel codice è il saluto Buongiorno! E preferibile separare la definizione del saluto dall azione di presentarlo a video Questo richiede la definizione di un attributo costante della classe Ossequioso Definizione di attributi costanti public class Ossequioso private final String MIO_SALUTO = "Buongiorno!"; public void saluta () System.out.println println(mio_saluto); Primi passi con Java 21

22 Modulo di Definizione di attributi costanti Parola riservata (modificatore di accesso all attributo) Tipo dell attributo Nome dell attributo private final String MIO_SALUTO = "Buongiorno!" ; Parola riservata (indica che l attributo è immutabile) Il livello di definizione dell attributo è implicito Operatore di assegnazione Valore assegnato all attributo costante Definizione di attributi variabili La classe Ossequioso nella versione fin qui presentata è di limitatissima utilità poiche tutte le sue istanze sarebbero di fatto uguali La classe Ossequioso sarebbe un po più utile se fosse possibile creare diverse istanze di Ossequioso ciascuna capace di presentare un saluto diverso (p.e. in una diversa lingua) E necessario che Ossequioso abbia un attributo variabile anziche di valore predefinito Primi passi con Java 22

23 Modulo di Definizione di attributi variabili public class Ossequioso private String miosaluto; public void saluta () System.out.println println(miosaluto); Definizione di attributi variabili Parola riservata (modificatore di accesso all attributo) Tipo dell attributo Nome dell attributo private String miosaluto ; L assenza della parola final indica che l attributo e variabile Il livello di definizione dell attributo è implicito Primi passi con Java 23

24 Modulo di Nota terminologica Gli attributi (attributes( attributes) ) vengono anche chiamati campi (fields( fields) ) o data members della classe Un attributo costante viene normalmente chiamato costante Un attributo variabile viene normalmente chiamato attributo Inizializzazione degli attributi La versione appena presentata della classe Ossequioso è incompleta: si definisce un attributo variabile ma non il suo valore L assegnazione dei valori agli attributi avviene normalmente nella fase di costruzione di un oggetto ad opera di metodi speciali detti metodi costruttori Dobbiamo quindi dotare la classe Ossequioso di un costruttore Primi passi con Java 24

25 Modulo di Metodi costruttori public class Ossequioso private String miosaluto; public Ossequioso (String( cosadevodire) miosaluto = cosadevodire; public void saluta () System.out.println println(miosaluto); Il costruttore Parola riservata (modificatore di accesso al metodo costruttore) Il nome del metodo uguale al nome della classe indica che si tratta di un costruttore Lista di argomenti (o parametri) formali del costruttore public Ossequioso (String( cosadevodire) miosaluto = cosadevodire; All attributo miosaluto viene assegnato il valore dell argomento cosadevodire Primi passi con Java 25

26 Modulo di Invocazione del costruttore A questo punto la classe Ossequioso è completa ma è richiesta una modifica della classe BuongiornoMain che rifletta il nuovo modo di costruire le istanze della classe Ossequioso Anziché usare il costruttore predefinito usiamo quello definito da noi che richiede di ricevere un argomento di tipo String Invocazione del costruttore public class BuongiornoMain private final static String SALUTO_ITA = "Buongiorno!"; public static void main (String args[]) Ossequioso maggiordomo; maggiordomo = new Ossequioso(SALUTO_ITA); maggiordomo.saluta(); Primi passi con Java 26

27 Modulo di Invocazione del costruttore public class BuongiornoMain Definizione attributo costante private final static String SALUTO_ITA = "Buongiorno!"; public static void main (String args[]) Ossequioso maggiordomo; maggiordomo = new Ossequioso(SALUTO_ITA); maggiordomo.saluta(); Invocazione del costruttore passando come argomento attuale l attributo SALUTO_ITA Costruzione di un oggetto CODICE...SALUTO_ITA="Buongiorno!"... Ossequioso maggiordomo; maggiordomo= new Ossequioso(SALUTO_ITA); SALUTO_ITA maggiordomo null MEMORIA Buongiorno! Primi passi con Java 27

28 Modulo di... Costruzione di un oggetto CODICE BuongiornoMain SALUTO_ITA MEMORIA Buongiorno! maggiordomo= new Ossequioso(SALUTO_ITA); CODICE Ossequioso Ossequioso(String cosadevodire) miosaluto=cosadevodire; maggiordomo null miosaluto...saluta() Invocazione del metodo CODICE BuongiornoMain MEMORIA SALUTO_ITA Buongiorno! maggiordomo.saluta() saluta() CODICE Ossequioso System.out.println(mioSaluto miosaluto); maggiordomo null miosaluto...saluta()... Primi passi con Java 28

29 Modulo di Roadmap 0. Primi passi con Java Introduzione alla tecnologia Java Il primo programma Java Uso di più classi Attributi e costruttori Uso di più istanze Due maggiordomi Un solo maggiordomo che ci ossequia non ci basta più Creare due maggiordomi richiede di modificare solo la classe BuongiornoMain: avremo quindi due istanze distinte della classe Ossequioso Primi passi con Java 29

30 Modulo di Due maggiordomi public class BuongiornoMain private final static String SALUTO_ITA = "Buongiorno!"; private final static String SALUTO_FRA = "Bonjour" Bonjour!"; public static void main (String args[]) Ossequioso maggiordomoita, maggiordomofra; maggiordomoita = new Ossequioso(SALUTO_ITA); maggiordomofra = new Ossequioso(SALUTO_FRA); maggiordomoita.saluta(); maggiordomofra.saluta(); E possibile definire piu variabili dello stesso tipo su un unica riga separando i nomi con virgole Due maggiordomi public class BuongiornoMain private final static String SALUTO_ITA = "Buongiorno!"; private final static String SALUTO_FRA = "Bonjour" Bonjour!"; public static void main (String args[]) Ossequioso maggiordomoita, maggiordomofra; maggiordomoita = new Ossequioso(SALUTO_ITA); maggiordomofra = new Ossequioso(SALUTO_FRA); maggiordomoita.saluta(); maggiordomofra.saluta(); Primi passi con Java 30

31 Modulo di Due maggiordomi SALUTO_ITA Buongiorno! SALUTO_FRA Bonjour! maggiordomoita maggiordomofra null null Due maggiordomi public class BuongiornoMain private final static String SALUTO_ITA = "Buongiorno!"; private final static String SALUTO_FRA = "Bonjour" Bonjour!"; public static void main (String args[]) Ossequioso maggiordomoita, maggiordomofra; maggiordomoita = new Ossequioso(SALUTO_ITA); maggiordomofra = new Ossequioso(SALUTO_FRA); maggiordomoita.saluta(); maggiordomofra.saluta(); Primi passi con Java 31

32 Modulo di Due maggiordomi SALUTO_ITA Buongiorno! SALUTO_FRA Bonjour! maggiordomoita maggiordomofra null null miosaluto...saluta() System.out.println (miosaluto); Due maggiordomi public class BuongiornoMain private final static String SALUTO_ITA = "Buongiorno!"; private final static String SALUTO_FRA = "Bonjour" Bonjour!"; public static void main (String args[]) Ossequioso maggiordomoita, maggiordomofra; maggiordomoita = new Ossequioso(SALUTO_ITA); maggiordomofra = new Ossequioso(SALUTO_FRA); maggiordomoita.saluta(); maggiordomofra.saluta(); Primi passi con Java 32

33 Modulo di Due maggiordomi SALUTO_ITA Buongiorno! SALUTO_FRA Bonjour! maggiordomoita maggiordomofra null null miosaluto miosaluto...saluta() System.out.println (miosaluto);...saluta() System.out.println (miosaluto); Due maggiordomi public class BuongiornoMain private final static String SALUTO_ITA = "Buongiorno!"; private final static String SALUTO_FRA = "Bonjour" Bonjour!"; public static void main (String args[]) Ossequioso maggiordomoita, maggiordomofra; maggiordomoita = new Ossequioso(SALUTO_ITA); maggiordomofra = new Ossequioso(SALUTO_FRA); maggiordomoita.saluta(); maggiordomofra.saluta(); Primi passi con Java 33

34 Modulo di Due maggiordomi SALUTO_ITA Buongiorno! SALUTO_FRA Bonjour! maggiordomoita maggiordomofra null null miosaluto miosaluto...saluta() System.out.println (miosaluto);...saluta() System.out.println (miosaluto); Due maggiordomi public class BuongiornoMain private final static String SALUTO_ITA = "Buongiorno!"; private final static String SALUTO_FRA = "Bonjour" Bonjour!"; public static void main (String args[]) Ossequioso maggiordomoita, maggiordomofra; maggiordomoita = new Ossequioso(SALUTO_ITA); maggiordomofra = new Ossequioso(SALUTO_FRA); maggiordomoita.saluta(); maggiordomofra.saluta(); Primi passi con Java 34

35 Modulo di Due maggiordomi SALUTO_ITA Buongiorno! SALUTO_FRA Bonjour! maggiordomoita maggiordomofra null null miosaluto miosaluto...saluta() System.out.println (miosaluto);...saluta() System.out.println (miosaluto); Roadmap 0. Primi passi con Java Introduzione alla tecnologia Java Il primo programma Java Uso di più classi Attributi e costruttori Uso di più istanze Tirando le somme Primi passi con Java 35

36 Modulo di Tirando le somme: la classe con il metodo main Un programma Java stand-alone alone e costituito da almeno una classe che contiene il metodo main e normalmente da una o più altre classi La classe che contiene il metodo main normalmente non contiene molto altro di più e il suo scopo è dare l avvio all esecuzione La classe che contiene il metodo main non è concepita per essere istanziata Tirando le somme: le classi istanziabili Esistono classi (come Ossequioso) il cui scopo è rappresentare il prototipo generico di molteplici oggetti concreti (detti istanze) aventi caratteristiche generali simili ma proprietà specifiche distinte La creazione di istanze avviene utilizzando l operatore new La definizione della classe specifica le operazioni che possono essere eseguite dalle istanze della classe Primi passi con Java 36

37 Modulo di Definizione di una classe La definizione di una classe comprende la definizione di attributi e la definizione di metodi Se la classe è concepita per essere istanziabile normalmente tra i metodi vi sono uno o più metodi costruttori (identificabili perché hanno lo stesso nome della classe) Definizione di una classe Definizione di attributi (due in questo caso) public class BuongiornoMain private final static String SALUTO_ITA = "Buongiorno!"; private final static String SALUTO_FRA = "Bonjour" Bonjour!"; public static void main (String args[]) Ossequioso maggiordomoita, maggiordomofra; maggiordomoita = new Ossequioso(SALUTO_ITA); maggiordomofra = new Ossequioso(SALUTO_FRA); maggiordomoita.saluta(); maggiordomofra.saluta(); Definizione di metodi (uno solo in questo caso) Primi passi con Java 37

38 Modulo di Definizione di una classe Definizione di attributi (uno in questo caso) public class Ossequioso Uno dei metodi e un costruttore private String miosaluto; public Ossequioso (String( cosadevodire) miosaluto = cosadevodire; public void saluta () System.out.println println(miosaluto); Definizione di metodi (due in questo caso) Uno schema tipico La classe BuongiornoMain illustra uno schema generico utilizzato da molti programmi Java: il metodo main crea istanze di una o più altre classi e quindi invoca i loro metodi Tutti gli aspetti introdotti in questo primo esempio richiedono approfondimenti e completamenti che saranno forniti in modo sistematico nel seguito del corso Primi passi con Java 38

Panoramica: che cosa è necessario

Panoramica: che cosa è necessario Scheda 02 L installazione dell SDK G IOVANNI PULITI Panoramica: che cosa è necessario Per poter lavorare con applicazioni Java o crearne di nuove, il programmatore deve disporre di un ambiente di sviluppo

Dettagli

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

Corso 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

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

Java: Compilatore e Interprete

Java: Compilatore e Interprete Java: Compilatore e Interprete Java Virtual Machine Il bytecode non è Linguaggio Macchina. Per diventarlo, deve subire un ulteriore trasformazione che viene operata dall interprete Java in modalità JIT

Dettagli

Introduzione alla programmazione Java. Dott. Ing. M. Banci, PhD

Introduzione alla programmazione Java. Dott. Ing. M. Banci, PhD Introduzione alla programmazione Java Dott. Ing. M. Banci, PhD Obiettivi del corso Creare, compilare, e eseguire programmi Java Tipi di dato primitivi Flusso di controllo Java Metodi Arrays Introduzione

Dettagli

Programmare in Java. Olga Scotti

Programmare 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

Dettagli

Oggetti Lezione 3. aspetti generali e definizione di classi I

Oggetti Lezione 3. aspetti generali e definizione di classi I Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione

Dettagli

Programmazione in Java Parte I: Fondamenti

Programmazione in Java Parte I: Fondamenti Programmazione in Java Parte I: Fondamenti Lezione 1 Dott. Marco Faella Riferimenti Testi consigliati: Progettazione del software e design pattern in Java di C.S. Horstmann Apogeo Gli esempi di codice

Dettagli

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 3 - Variabili Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di

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

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

Dettagli

Corso di Laurea Ingegneria Civile Fondamenti di Informatica. Traduzione ed esecuzione di programmi. Dispensa 08

Corso di Laurea Ingegneria Civile Fondamenti di Informatica. Traduzione ed esecuzione di programmi. Dispensa 08 Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 08 Traduzione ed esecuzione di programmi Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente materiale didattico

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Installazione SOFTWARE JDK ECLIPSE 03/03/2011 2 ALGORITMI E PROGRAMMI PROBLEMA ALGORITMO PROGRAMMA metodo risolutivo linguaggio di

Dettagli

Introduzione alla Progettazione per Componenti

Introduzione alla Progettazione per Componenti Introduzione alla Progettazione per Componenti Alessandro Martinelli 6 ottobre 2014 Obiettivo del Corso Il Progetto Software Reale Il Componente Software La Programmazione Ad Oggetti Fondamenti di Informatica

Dettagli

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

Struttura di un programma Java

Struttura 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

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

Prova di Laboratorio di Programmazione

Prova di Laboratorio di Programmazione Prova di Laboratorio di Programmazione 6 febbraio 015 ATTENZIONE: Non è possibile usare le classi del package prog.io del libro di testo. Oltre ai metodi richiesti in ciascuna classe, è opportuno implementare

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

Informatica 3. LEZIONE 7: Fondamenti di programmazione orientata agli oggetti (1)

Informatica 3. LEZIONE 7: Fondamenti di programmazione orientata agli oggetti (1) Informatica 3 LEZIONE 7: Fondamenti di programmazione orientata agli oggetti (1) Modulo 1: Introduzione: oggetti e classi Modulo 2: Link e associazioni Modulo 3: Aggregazione Informatica 3 Lezione 7 -

Dettagli

Strumenti per la programmazione

Strumenti per la programmazione Editing del programma Il programma deve essere memorizzato in uno o più files di testo editing codice sorgente 25 Traduzione del programma Compilazione: è la traduzione effettuata da un compilatore Un

Dettagli

Le command line di Java

Le command line di Java Le command line di Java Esercitazioni di Programmazione 2 Novella Brugnolli brugnoll@science.unitn.it Ambiente di lavoro Per compilare ed eseguire un programma Java abbiamo bisogno di: The JavaTM 2 Platform,

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

2 - Introduzione al linguaggio Java

2 - Introduzione al linguaggio Java 2 - Introduzione al linguaggio Java Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

Tale attività non è descritta in questa dispensa

Tale attività non è descritta in questa dispensa Fondamenti di informatica Oggetti e Java ottobre 2014 1 Nota preliminare L installazione e l uso di Eclipse richiede di aver preliminarmente installato Java SE SDK Tale attività non è descritta in questa

Dettagli

Tutorial per l installazione del J2SE 6 e configurazione del sistema operativo

Tutorial 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

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

Object Oriented Programming

Object Oriented Programming OOP Object Oriented Programming Programmazione orientata agli oggetti La programmazione orientata agli oggetti (Object Oriented Programming) è un paradigma di programmazione Permette di raggruppare in

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

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Conclusioni Parte b versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Introduzione al linguaggio Java

Introduzione al linguaggio Java Introduzione al linguaggio Java Alessandro Martinelli alessandro.martinelli@unipv.it 28 Settembre 2011 Introduzione al linguaggio Java Generalità del Linguaggio Java e Portabilità Java e Robustezza Java

Dettagli

GESTIONE DEI PROCESSI

GESTIONE DEI PROCESSI Sistemi Operativi GESTIONE DEI PROCESSI Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in Java Concetto

Dettagli

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse Prova Finale a.a. 2011/2012 Laboratorio 1: Introduzione a Java e Eclipse 1 Java 6 Standard Edition Linguaggio Java (... (javac, Tool di sviluppo Librerie per l'interfaccia grafica Librerie di base Macchina

Dettagli

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete La prima applicazione Java Programma MyFirstApplication Il programma visualizza una finestra vuota sullo schermo. Importo il package delle classi usate nel seguito. Dichiaro la classe MyFirstApplication

Dettagli

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti 13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/

Dettagli

Programmi e Oggetti Software

Programmi e Oggetti Software Corso di Laurea Ingegneria Civile Elementi di Informatica Programmi e Oggetti Software Settembre 2006 Programmi e Oggetti Software 1 Contenuti Cosa è un programma Cosa significa programmare Il punto di

Dettagli

Modulo 4: Ereditarietà, interfacce e clonazione

Modulo 4: Ereditarietà, interfacce e clonazione Modulo 4: Ereditarietà, interfacce e clonazione Argomenti Trattati: Classi, Superclassi e Sottoclassi Ereditarietà Ereditarietà ed Attributi Privati Override super Ereditarietà e Costruttori Polimorfismo

Dettagli

Introduzione alla Programmazione Orientata agli Oggetti. Classi, Oggetti e Messaggi

Introduzione alla Programmazione Orientata agli Oggetti. Classi, Oggetti e Messaggi Introduzione alla Programmazione Orientata agli Oggetti Classi, Oggetti e Messaggi Agenda 1. La metodologia di progettazione ad oggetti Concetti fondamentali: oggetti, classi, messaggi 2. I concetti fondamentali

Dettagli

Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso

Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso Informazioni generali Docente: Prof.ssa Dora Giammarresi: giammarr@mat.uniroma2.it Tutor:??? Informazioni generali

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

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

Dettagli

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1 MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati

Dettagli

MECCANISMI E POLITICHE DI PROTEZIONE 13.1

MECCANISMI E POLITICHE DI PROTEZIONE 13.1 MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati

Dettagli

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

Java Virtual Machine

Java Virtual Machine Java Virtual Machine programmi sorgente: files.java compilatore files.class bytecode linker/loader bytecode bytecode Java API files.class interprete macchina ospite Indipendenza di java dalla macchina

Dettagli

4. Un ambiente di sviluppo per Java

4. Un ambiente di sviluppo per Java pag.15 4. Un ambiente di sviluppo per Java Esistono in commercio molti ambienti di sviluppo utilizzati dai programmatori Java, in particolare si tratta di editor complessi che mettono a disposizione tools

Dettagli

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015

Java: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

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

Informatica. Prof. A. Longheu. Introduzione a Java

Informatica. Prof. A. Longheu. Introduzione a Java Informatica Prof. A. Longheu Introduzione a Java 1 Code-Name Green Nome del progetto Sun con l obiettivo di fornire intelligent consumer-electronic devices. Il risultato fu Oak Un linguaggio basato su

Dettagli

Eclipse. Avviare un progetto e compilare un semplice programma

Eclipse. Avviare un progetto e compilare un semplice programma Eclipse Avviare un progetto e compilare un semplice programma Descrizione di Eclipse Eclipse è un ambiente di sviluppo che facilita la scrittura ed il debug di programmi java Permette di: Scrivere il codice

Dettagli

Programmazione. Programmare ad oggetti. Programmi e calcolatori. Focalizzazione del corso. Alcuni linguaggi famosi. Programmi e linguaggi

Programmazione. Programmare ad oggetti. Programmi e calcolatori. Focalizzazione del corso. Alcuni linguaggi famosi. Programmi e linguaggi 1 Programmazione Anno accademico 2002-2003 Orario delle lezioni: Mercoledì: 16-19, Giovedì: 16-19 Prof. Gerardo Canfora canfora@unisannio.it Libro di testo: David Arnow, Gerald Weiss Introduzione alla

Dettagli

Progettazione : Design Pattern Creazionali

Progettazione : Design Pattern Creazionali Progettazione : Design Pattern Creazionali Alessandro Martinelli alessandro.martinelli@unipv.it 30 Novembre 2010 Progettazione : Design Pattern Creazionali Aspetti generali dei Design Pattern Creazionali

Dettagli

Programmazione ad Oggetti. Java Parte I

Programmazione ad Oggetti. Java Parte I Programmazione ad Oggetti Java Parte I Overview Caratteristiche generali 1 Caratteristiche generali Un moderno linguaggio orientato agli oggetti Pensato per lo sviluppo di applicazioni che devono essere

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

Esercitazione di Basi di Dati

Esercitazione di Basi di Dati Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 6 Maggio 2004 Come costruire una ontologia Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione, stanza

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

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Reflection in Java 1 Reflection Riflessione

Dettagli

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012 Fondamenti di informatica Oggetti e Java ottobre 2012 1 JUnit JUnit è uno strumento per assistere il programmatore Java nel testing JUnit consente di scrivere test di oggetti e classi Java i test sono

Dettagli

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005 Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005 Si noti che le soluzioni ai quesiti saranno considerate

Dettagli

Fondamenti di programmazione in Java. Lezione III

Fondamenti di programmazione in Java. Lezione III Fondamenti di programmazione in Java Lezione III Scopo della lezione Descrivere gli strumenti che utilizzeremo nel resto del corso per sviluppare programmi in java UltraEdit Java SDK Imparare a scrivere

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

Dettagli

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Siti web centrati sui dati Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Appunti di Informatica www.mimmocorrado.it 1

Appunti di Informatica www.mimmocorrado.it 1 Installare Java Il programma può essere scaricato dal seguente indirizzo: http://www.java.com/it/download/windows_ie.jsp?locale=it&host=www.java.com Per installare la JDK è necessario: 1. scaricare il

Dettagli

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it Programmazione II Lezione 4 Daniele Sgandurra daniele.sgandurra@iit.cnr.it 30/09/2011 1/46 Programmazione II Lezione 4 30/09/2011 Sommario 1 Esercitazione 2 Panoramica della Programmazione Ad Oggetti 3

Dettagli

Università degli Studi di Cassino Corso di Fondamenti di Informatica Puntatori. Anno Accademico 2010/2011 Francesco Tortorella

Università degli Studi di Cassino Corso di Fondamenti di Informatica Puntatori. Anno Accademico 2010/2011 Francesco Tortorella Corso di Informatica Puntatori Anno Accademico 2010/2011 Francesco Tortorella Variabili, registri ed indirizzi Abbiamo visto che la definizione di una variabile implica l allocazione (da parte del compilatore)

Dettagli

PROGRAMMA SVOLTO DI INFORMATICA ANNO SCOLASTICO 2013/2014. DOCENTE: Villani Chiara

PROGRAMMA SVOLTO DI INFORMATICA ANNO SCOLASTICO 2013/2014. DOCENTE: Villani Chiara LICEO SCIENTIFICO STATALE "FILIPPO LUSSANA" V i a A n g e l o Ma j, 1 2 4 1 2 1 B E R G A M O 035 237502 Fax: 035 236331 Sito e contatti: www.liceolussana.com Codice fiscale: 80026450165 PROGRAMMA SVOLTO

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

Linguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi

Linguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi Linguaggio Java Robusto Non permette costrutti pericolosi Eredità Multipla Gestione della Memoria Orientato agli oggetti Ogni cosa ha un tipo Ogni tipo è un oggetto (quasi) Protegge e gestisce dagli errori

Dettagli

11/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 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

Dettagli

Telematica II 17. Esercitazione/Laboratorio 6

Telematica II 17. Esercitazione/Laboratorio 6 Multitasking e Multithreading Telematica II 17. Esercitazione/Laboratorio 6 Multitasking si riferisce all abilità di un computer di eseguire processi (jobs) multipli in maniera concorrente si ricorda che

Dettagli

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

Regione 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

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso 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

Dettagli

Ambienti di Sviluppo

Ambienti di Sviluppo Ambienti di Sviluppo Insieme omogeneo di strumenti adatti allo sviluppo di progetti software. Editor; Compilatori e/o interpreti; Strumenti di test; Applicazioni che permettono di editare / disegnare il

Dettagli

Parola chiave extends

Parola chiave extends Il Linguaggio Java Ereditarietà Ereditarietà L'ereditarietà permette di creare nuove classi sulla base di classi esistenti In particolare, permette di riusare il codice (metodi e campi); aggiungere nuovi

Dettagli

La Metodologia adottata nel Corso

La Metodologia adottata nel Corso La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema

Dettagli

Introduzione a Classi e Oggetti

Introduzione a Classi e Oggetti Introduzione a Classi e Oggetti Oggetto: concetto astratto Entità di un programma dotata di tre proprietà caratteristiche stato informazioni conservate nell oggetto condizionano il comportamento dell oggetto

Dettagli

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA BOZZA 23/07/2008 INDICE 1. PERCHÉ UNA NUOVA VERSIONE DEI MODULI DI RACCOLTA DATI... 3 2. INDICAZIONI GENERALI... 4 2.1. Non modificare la struttura dei fogli di lavoro... 4 2.2. Cosa significano

Dettagli

Architettura MVC-2: i JavaBeans

Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

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

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

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

Testo Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.

Testo Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche. Testo Esercizio Un negozio di musica vende anche libri e riviste musicali. Si intende automatizzare l intero processo, dall approvvigionamento alla vendita. Si analizzino i requisiti e se ne rappresentino

Dettagli

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle

Dettagli

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools Una breve introduzione operativa a STGraph Luca Mari, versione 5.3.11 STGraph è un sistema software per creare, modificare ed eseguire modelli di sistemi dinamici descritti secondo l approccio agli stati

Dettagli

Mon Ami 3000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività

Mon Ami 3000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività Prerequisiti Mon Ami 000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività L opzione Centri di costo è disponibile per le versioni Contabilità o Azienda Pro. Introduzione

Dettagli

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE Relatore: prof. Michele Moro Laureando: Marco Beggio Corso di laurea in Ingegneria Informatica Anno Accademico 2006-2007

Dettagli

Esercitazione n 4. Obiettivi

Esercitazione n 4. Obiettivi Esercitazione n 4 Obiettivi Progettare e implementare per intero un componente software in Java Linguaggio Java: Classi astratte Utilizzo di costruttori e metodi di superclasse Polimorfismo Esempio guida:

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011 Testo Il database di un videonoleggio è costituito da due vettori paralleli.

Dettagli

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1) Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi

Dettagli

Generazione Automatica di Asserzioni da Modelli di Specifica

Generazione Automatica di Asserzioni da Modelli di Specifica UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:

Dettagli

Corrispondenze e funzioni

Corrispondenze e funzioni Corrispondenze e funzioni L attività fondamentale della mente umana consiste nello stabilire corrispondenze e relazioni tra oggetti; è anche per questo motivo che il concetto di corrispondenza è uno dei

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,

Dettagli

Primi programmi in Java. Lezione IV

Primi programmi in Java. Lezione IV Primi programmi in Java Lezione IV Scopo della lezione Realizzare dei semplici programmi scritti in Java. Esercitarsi nelle operazioni necessarie per passare dalla scrittura di codice Java all esecuzione

Dettagli

Realizzazione di una classe con un associazione

Realizzazione di una classe con un associazione Realizzazione di una classe con un associazione Nel realizzare una classe che è coinvolta in un associazione, ci dobbiamo chiedere se la classe ha responsabilità sull associazione. Diciamo che una classe

Dettagli

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Scopo della lezione. Informatica. Informatica - def. 1. Informatica Scopo della lezione Informatica per le lauree triennali LEZIONE 1 - Che cos è l informatica Introdurre i concetti base della materia Definire le differenze tra hardware e software Individuare le applicazioni

Dettagli

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

Corso 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

Dettagli

L apposizione di firme e informazioni su documenti firmati

L apposizione di firme e informazioni su documenti firmati L apposizione di firme e informazioni su documenti firmati Il presente documento si pone l obiettivo di chiarire alcuni aspetti generali dei formati di firma CAdES (file con estensione p7m) e PAdES (file

Dettagli