Scrivere un programma in Java

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Scrivere un programma in Java"

Transcript

1 Programmare in JAVA Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma SIENA uff interno: 7102 Stanza 119

2 Scrivere un programma in Java Una caratteristica che ha reso popolare il Java è quella di essere indipendente dal S.O. in cui un programma è compilato. Ma come è resa possibile questa cosa? Il compilatore Java produce un codice che non è il codice binario finale, ma un codice binario intermedio chiamato bytecode (indipendente dall architettura) Questo codice intermedio è interpretato da una macchina virtuale che lo traduce in istruzioni macchina la Java Virtual Machine (JVM) La JVM ha bisogno di conoscere il SO su cui sta girando. La Sun mette a disposizione JVM per tutti i sistemi operativi: Windows, Linux, Unix, Mac ecc

3 Scrivere un programma in Java In definitiva, scrivere un programma Java vuole dire creare un file di testo contenente del codice sorgente Java: un file per ogni classe Il file così creato ha estensione.java e deve essere elaborato dal compilatore Java: javac xxx.java xxx.class Il compliatore crea un file.class, con lo stesso nome dell originario, che contiene il bytecode per la JVM java xxx esecuzione del main della classe xxx.class

4 Es HelloWorld.java class HelloWorld { public static void main(string[] args) { System.out.println( Hello World! ); } } bytecode Java Compiler javac javac e java sono forniti con la distribuzione Java (JDK) java JVM HelloWorld.class

5 javac.exe e java.exe Forniti con la distribuzione Java della SUN: JDK Dipendono dall architettura: È necessario utilizzare il JDK per Windows se si usa Windows, ugualmente per Linux, Mac, ecc Sono applicazioni lanciate dall utente dalla shell dei comandi (prompt di MS-DOS per utenti Windows) oppure dall ambiente di sviluppo grafico utilizzato Devono essere nel path di ricerca del S.O. : Es. in windows: path %path%;c:\programmi\java\j2re1.4.2_04;c:\programmi\java\ j2re1.4.2_04\bin; set JAVAHOME=C:\Programmi\Java\j2re1.4.2_04

6 javac.exe

7 java.exe

8 CLASSPATH Quando creiamo una classe Java, affinché sia utilizzabile è necessario che il nome del file sia lo stesso del nome della classe: La classe prova va quindi salvata in un file prova.java e compilata nel file prova.class Il compilatore javac si occupa di generare il file.class con il nome del file.java che gli viene fornito come parametro di ingresso Il file.class deve poi essere presente nel classpath della macchina virtuale, altrimenti non sarà trovato. E possibile specificare il classpath, come opzione, quando viene eseguita la JVM: java.exe classpath [PATH1;PATH2; ;PATHn] file.class In alternativa si può definire una variabile di sistema CLASSPATH da cui il compilatore e la JVM leggono automaticamente il classpath

9 Classpath in javac

10 Classpath in JVM

11 Regole di base di JAVA

12 Regole di base 1 Java, come quasi tutti i linguaggi di programmazione di alto livello è case-sensitive, distingue cioè le lettere minuscole da quelle maiuscole: La variabile nome è quindi diversa da Nome È consigliato inserire delle linee di commento per rendere il codice più leggibile e comprensibile (commentare il codice): La sequenza // permette di commentare la parte di riga rimanente I delimitatori /* e */ permettono di commentare tutto ciò che è compreso tra queste due sequenze di caratteri Es: int a=3; // questa parte finale della riga è commentata /* commento su più righe */

13 Regole di base 2 Istruzione Ogni istruzione termina con un ; Blocchi di codice Ogni blocco di codice (sequenza di una o più istruzioni da eseguire in blocco) è racchiuso tra parentesi graffe: { } Formattazione Una singola istruzione per riga L apertura di un blocco viene indentata per rendere più chiara la struttura del blocco class HelloWorld { public static main(string[] args) { // visualizza un messaggio di saluto System.out.println( Hello World!! ); } }

14 Facciamo un esempio Scrivere un applicazione di benvenuto: il cosiddetto HelloWorld Iniziamo col creare un file HelloWorld.java con il notepad (o qualsiasi altro editor di testo) Scriviamo il codice per la nostra applicazione: class HelloWorld { public static void main(string[] args) { System.out.println( Hello World! ); } } Utilizziamo lo script JavaEnvStart : Questo script setta le variabili di ambiente JAVAHOME e PATH in modo cha sia possibile utilizzare javac.exe e java.exe

15 Facciamo un esempio Copiamo lo script nella directory dove abbiamo salvato il file HelloWorld.java ed avviamo il prompt di MS-DOS Digitiamo: javac HelloWorld.java E vediamo che viene creato il file HelloWorld.class Se proviamo ad aprire il file HelloWorld.class con un editor di testo (notepad), vediamo una sequenza di caratteri incomprensibile: bytecode della nostra prima applicazione Java Adesso chiamiamo la JVM per eseguire la nostra classe: java HelloWorld

16 Facciamo un esempio Otteniamo però un errore: Exception in thread "main" java.lang.noclassdeffounderror: HelloWorld Cosa vuol dire? La JVM non trova la classe HelloWorld di cui deve lanciare la funzione main() Forse vuole il nome del file: java HelloWorld.class Otteniamo ancora un errore simile: Exception in thread "main" java.lang.noclassdeffounderror: HelloWorld/class La JVM ancora non trova la classe HelloWorld/class Dove è il problema?

17 Facciamo un esempio Il problema sta nel fatto che la JVM cerca la classe HelloWorld (ossia il file HelloWorld.class) nei percorsi specificati dalla variabile di sistema CLASSPATH: Questa variabile non contiene però il percorso dove si trova HelloWorld.class E necessario quindi specificare alla JVM che cerchi il file (o meglio la classe) anche nella directory corrente: java cp. HelloWorld Adesso funziona tutto!!

18 Facciamo un esempio Proviamo adesso a rinominare la funzione main(string[] args) con run(string[] args) e compiliamo di nuovo: Per adesso nessun problema, javac genera il file HelloWorld.class Proviamo a lanciare HelloWorld.class : java cp. HelloWorld Ovviamente otteniamo un errore: Exception in thread "main" java.lang.nosuchmethoderror: main Perché OVVIAMENTE? Che errore si verifica?

19 Facciamo un esempio Leggendo attentamente il messaggio di errore si vede che la JVM ci sta dicendo che non trova il metodo main Il metodo main di un oggetto, come detto, contiene il corpo principale dell applicazione rappresentata dall oggetto stesso Quando si invia un oggetto alla JVM, quest ultima prova a lanciare il metodo main, ad eseguire quindi l oggetto come se fosse un applicazione: Se tale metodo non esiste, la JVM ritorna un errore del tipo visto prima

20 IDE

21 Integrated Development Environment (IDE) Un IDE è una applicazione grafica che fornisce al programmatore un ambiente di sviluppo completo ma al tempo stesso semplice e chiaro Tramite una interfaccia grafica (GUI) è possibile costruire il progetto, tenere sotto controllo le varie parti, effettuare il debugging e molto altro ancora I più comuni ambienti di sviluppo Java sono: JBuilder della Borland, a pagamento, ma è disponibile una versione free (chiamata Foundation) NetBeans della SunMicrosystem, free scaricabile dal sito Eclipse della Eclipse Foundation

22 Integrated Development Environment (IDE) L uso dei programmi da linea di comando javac e java viene nascosto dalla IDE: Compilando il progetto, il software passa al compilatore tutti i files necessari e genera i file.class Anche l esecuzione del programma è gestita dall interfaccia e richiede solamente di specificare quale funzione main() eseguire Anche la gestione del path e del classpath è gestibile attraverso l interfaccia grafica: Il path corrente è automaticamente inserito nel classpath Aggiungendo librerie automaticamente viene aggiunto il percorso al classpath

23 Netbeans L ambiente che utilizzeremo è Netbeans, ma tutto ciò che viene fatto è facilmente trasportabile su Jbuilder o su Eclipse Oltre alla libreria standard del Java, ogni IDE può mettere a disposizione librerie proprietarie da utilizzare nel progetto: Non sempre consigliato dato che una caratteristica molto importante del Java è quella della trasferibilità del codice e molte volte l uso di librerie proprietarie può limitare questa possibilità Il Netbeans mette a disposizione una gran quantità di tipologie di progetto: tramite un wizard è possibile scegliere il tipo di progetto, specificarne i parametri ed iniziare a programmare

24 Esempio Proviamo adesso a creare una applicazione HelloWorld utilizzando Netbeans Prima di tutto avviamo Netbeans Apriamo il menù File e selezioniamo New Possiamo creare direttamente una classe o un progetto. Nel primo caso, viene richiesto comunque di creare un progetto per la classe. Una volta scelto il nome del progetto e dove salvarlo passiamo alla creazione guidata della classe Ci viene chiesto il nome della classe (HelloWorld) ed il package: Per adesso ignoriamo il package (lasciamo bianco il campo del package) Notiamo l opzione generate main method che permette di generare uno scheletro per la funzione main all interno della classe

25 Esempio Inseriamo il codice Java nel file HelloWorld.java class HelloWorld { public static void main(string[] args) { System.out.println( Hello World! ); } } Adesso possiamo compilare ed eseguire l applicazione: Tramite il menù run eseguiamo l applicazione Notiamo la possibilità di eseguire l applicazione anche in modalità Debug

26 Esempio Nella finestra in basso vedremo visualizzato l output dell applicazione E possibile verificare che anche in questo caso, rinominando la funzione main() in qualsiasi altro modo (anche Main()), il compilatore restituisce un errore

27 Debug

28 Debug in Netbeans Un IDE permette di effettuare un operazione molto utile al programmatore: Il debugging Trovare i punti in cui il programma si comporta in maniera differente da quello che il creatore si aspettava è un lavoro molto difficile e costoso: Il debug a run-time permette di impostare dei break-point Break-point: punto del programma in cui si desidera fermare il flusso delle istruzioni per verificare ed ispezionare lo stato dell applicazione

29 Breakpoint Viene selezionata la riga di codice in cui si desidera interrompere il programma Quando l esecuzione del programma raggiunge tale riga di codice, l IDE interrompe l esecuzione e permette all utente di interagire con il programma: per esempio la lettura di alcuni valori attuali dell applicazione Una volta terminata la verifica è possibile continuare fino al break-point successivo o fino alla terminazione dell applicazione Inoltre, esiste la possibilità di eseguire l applicazione passo-passo, in questo caso l ambiente si ferma ad ogni istruzione

30 Esempio Riprendiamo l applicazione HelloWorld Inseriamo una nuova istruzione: ES : una istruzione di assegnamento ad una variabile int a = 4; Inseriamo un break-point in corrispondenza dell istruzione successiva Lanciamo l applicazione in modalità debug

31 Esempio Vediamo che l esecuzione si interrompe alla linea di codice con il break-point A questo punto è possibile: ispezionare i contenuti dell oggetto

32 Esempio mettere dei watch sulle variabili

33 Esempio Infine è possibile continuare l applicazione (F5) fino ad un successivo break-point o alla fine, andare avanti passo-passo (F8), entrare all interno della funzione corrente(f7), ecc

Il linguaggio di programmazione JAVA

Il linguaggio di programmazione JAVA Introduzione a JAVA Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it http://www.dii.unisi.it/~rigutini/

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

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

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

Un primo programma Java. Introduzione alla programmazione in Java. Programmi e mondo reale. Programmare ad oggetti. I programmi come modelli

Un primo programma Java. Introduzione alla programmazione in Java. Programmi e mondo reale. Programmare ad oggetti. I programmi come modelli 4 Un primo programma Java Introduzione alla programmazione in Java class Program1 { System.out.println("Benvenuti al corso"); 1 5 Programmi e mondo reale Programmare ad oggetti Il codice di un programma

Dettagli

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD La prima applicazione Java con NetBeans IDE Dott. Ing. M. Banci, PhD Creare la prima applicazione 1. Creare un progetto: Quando si crea un progetto IDE occorre creare un ambiente nel quale costruire e

Dettagli

Introduzione alla programmazione in Java

Introduzione alla programmazione in Java Introduzione alla programmazione in Java 1 Programmare ad oggetti La programmazione come attività di creazione di modelli. I concetti di classe, oggetto e scambio di messaggi. Un primo esempio di programma

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

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

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

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50 Guida all uso dell ambiente di sviluppo 1 integrato o IDE JCreator LE 4.50 Inizializzazione: creazione del nuovo progetto e del file sorgente in ambiente JCreator Al lancio del programma si apre la finestra

Dettagli

PROGETTO LAUREE SCIENTIFICHE

PROGETTO LAUREE SCIENTIFICHE 1 PROGETTO LAUREE SCIENTIFICHE Write once, write everywhere è il motto dei progettisti del linguaggio java. Infatti questo linguaggio è il risultato dell esigenza di programmare per quello che si può chiamare

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

Info Architettura, JVM Installazione JDK (Windows, Linux) Hello world!

Info Architettura, JVM Installazione JDK (Windows, Linux) Hello world! Info Architettura, JVM Installazione JDK (Windows, Linux) Hello world! Laboratorio di Programmazione Esercitazioni - Iuri Frosio - frosio@dsi.unimi.it 1 Info Orario: Lunedì (8,30) 9,00 12,30, Aula 309

Dettagli

APPENDICE. Appendice. Strumenti per lo sviluppo dei programmi Java

APPENDICE. Appendice. Strumenti per lo sviluppo dei programmi Java APPENDICE Appendice Strumenti per lo sviluppo dei programmi Java Per imparare a programmare non è sufficiente leggere gli esempi del testo, ma è necessario scrivere ed eseguire realmente i programmi. Tutti

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

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

Linguaggi 2 e laboratorio

Linguaggi 2 e laboratorio Linguaggi 2 e laboratorio Docente: Leonardo Badia Contatti: leonardo.badia@gmail.com Pagina web del corso: www.unife.it/scienze/informatica/ insegnamenti/linguaggi-2-laboratorio Argomenti del corso: Java

Dettagli

Java: Compilazione e Traduzione. Fondamenti di Informatica L-B Esercitazione n 3 Introduzione a JAVA. C: Editing, compilazione, esecuzione

Java: Compilazione e Traduzione. Fondamenti di Informatica L-B Esercitazione n 3 Introduzione a JAVA. C: Editing, compilazione, esecuzione Fondamenti di Informatica L-B Esercitazione n 3 Introduzione a JAVA A.A. 2007/08 Tutor: Barbara Pettazzoni barbara.pettazzoni@studio.unibo.it Java: Compilazione e Traduzione Editing, compilazione, esecuzione

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

public class Hello { public static void main(string[] args){ // visualizza un messaggio sulla finestra di // console System.out.

public class Hello { public static void main(string[] args){ // visualizza un messaggio sulla finestra di // console System.out. javac Hello.java javac.exe javac.exe java Hello Hello, World! java.exe java.exe console public HelloWorld InsiemeDiCaratteri ContoPersonalizzato HelloworldHelloWorld HelloWorld class classpublic public

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

Introduzione ad Eclipse

Introduzione ad Eclipse Introduzione ad Eclipse Corso di Metodi Avanzati di Programmazione 2014-2015 Docente: Dr. Annalisa Appice Tutor di Laboratorio: dott. Roberto Corizzo Ambiente Eclipse Sommario Java: ambiente Eclipse L

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Da JavaScript a Java

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Da JavaScript a Java Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Da JavaScript a Java Versione 3.4.05 Per la prima lezione in aula e la prima esercitazione in laboratorio 1 Da JavaScript a Java

Dettagli

Programmazione ad oggetti

Programmazione ad oggetti DAIS Univ. Ca' Foscari Venezia Programmazione ad oggetti Samuel Rota Bulò Informazioni generali Docente: Samuel Rota Bulò @email: srotabul@dais.unive.it Homepage: http://www.dais.unive.it/~srotabul/ ooprogramming2012.html

Dettagli

IL LINGUAGGIO JAVA: CARATTERISTICHE

IL LINGUAGGIO JAVA: CARATTERISTICHE CHE COS È JAVA È un linguaggio (e relativo ambiente di programmazione) definito dalla Sun Microsystems per permettere lo sviluppo di applicazioni sicure, performanti e robuste su piattaforme multiple,

Dettagli

PAOLO CAMAGNI RICCARdO NIkOLAssy. CORsO di JAVA. Dalla programmazione ad oggetti alle applicazioni grafiche HOEPLI

PAOLO CAMAGNI RICCARdO NIkOLAssy. CORsO di JAVA. Dalla programmazione ad oggetti alle applicazioni grafiche HOEPLI PAOLO CAMAGNI RICCARdO NIkOLAssy CORsO di JAVA Dalla programmazione ad oggetti alle applicazioni grafiche HOEPLI Corso di Java Paolo camagni riccardo nicolassy Corso di Java Dalla programmazione ad oggetti

Dettagli

Esercitazione 4 JDBC

Esercitazione 4 JDBC JDBC Obiettivi dell esercitazione Familiarizzare con l'organizzazione dell'ambiente di lavoro per la realizzazione di applicazioni Java Utilizzare i costrutti di base della libreria JDBC per 1. la gestione

Dettagli

Installazione del Software. per lo Sviluppo di Applicazioni Java

Installazione del Software. per lo Sviluppo di Applicazioni Java Installazione del Software per lo Sviluppo di Applicazioni Java Ing. Luca Ferrari ferrari.luca@unimore.it Tel. 0592056142 Installazione del Software per lo Sviluppo di Applicazioni Java 1 Il Compilatore

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

Getting Started. Walter Cazzola. Dipartimento di Informatica e Comunicazione Università degli Studi di Milano

Getting Started. Walter Cazzola. Dipartimento di Informatica e Comunicazione Università degli Studi di Milano Getting Started Walter Cazzola Dipartimento di Informatica e Comunicazione Università degli Studi di Milano Walter Cazzola Getting Started Slide 1 of 7 . Il primo passo consiste nel procurarsi Java. Java

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

Ingegneria del Software 1: Eclipse

Ingegneria del Software 1: Eclipse Ingegneria del Software 1: Eclipse Da completare entro Aprile 21, 2015 Srđan Krstić and Marco Scavuzzo 1 Contents 1 Introduzione 3 1.1 Java (JRE vs JDK).......................................... 3 1.2

Dettagli

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

Oggi. Programmazione e laboratorio: introduzione al corso. Docenti: laboratorio. Docenti: teoria. Il corso. Orario.

Oggi. Programmazione e laboratorio: introduzione al corso. Docenti: laboratorio. Docenti: teoria. Il corso. Orario. Programmazione e laboratorio: introduzione al corso Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione per

Dettagli

Telematica II 5. Esercitazione/Laboratorio 1

Telematica II 5. Esercitazione/Laboratorio 1 IDE Ambiente di sviluppo IDE - Integrated Development Environment Telematica II 5. Esercitazione/Laboratorio 1 e un Ambiente di Sviluppo Integrato che consente di creare in modo semplice progetti composti

Dettagli

Programmazione AA 2012 2013

Programmazione AA 2012 2013 Programmazione ad Oggetti AA 2012 2013 Contenuti del corso Modulo A Tecniche di programmazione Docente: Prof. Michele Bugliesi Modulo B Tecniche di progetto Docente: Prof. Alessandro Roncato Contenuti

Dettagli

Java. Traditional portability (ideal)

Java. Traditional portability (ideal) 1 Java JAVA: una introduzione 2 Traditional portability (ideal) C-code (Linux) (Pentium) Executable (Linux) Executable (Win32) Linux Windows 32 (Mac) Executable (Mac) Mac 1 1 3 Portability of Java programs

Dettagli

Java? Sì, grazie. Scopo del corso

Java? Sì, grazie. Scopo del corso 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

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

Appunti dei corsi di Programmazione di Rete Sistemi di elaborazione: Reti II

Appunti dei corsi di Programmazione di Rete Sistemi di elaborazione: Reti II Appunti dei corsi di Programmazione di Rete Sistemi di elaborazione: Reti II PROF. G. BONGIOVANNI 0) INTRODUZIONE AL LINGUAGGIO JAVA PER PROGRAMMATORI C++...2 0.1) Caratteristiche principali... 2 0.1.1)

Dettagli

Configurare TPTP in Eclipse e testare un applicazione

Configurare TPTP in Eclipse e testare un applicazione Configurare TPTP in Eclipse e testare un applicazione Questa guida concentra la sua attenzione sul tool TPTP (Test & Performance Tools Platform) presente nell ambiente di sviluppo Eclipse. Verrà descritta

Dettagli

Corso Java > Primo approccio al codice scritto da Claudio De Sio Cesari

Corso Java > Primo approccio al codice scritto da Claudio De Sio Cesari Corso Java > Primo approccio al codice scritto da Claudio De Sio Cesari Diamo subito uno sguardo alla classica applicazione "Hello World". Trattasi del tipico primo programma che rappresenta il punto di

Dettagli

Informatica. Terzo anno Prof. A. Longheu

Informatica. Terzo anno Prof. A. Longheu Informatica Terzo anno Prof. A. Longheu INTRODUZIONE AL LINGUAGGIO JAVA Originariamente, il progetto che avrebbe portato al linguaggio Java era noto come progetto Green Nome del progetto Sun con l obiettivo

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

Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013

Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013 Programmazione a Oggetti e JAVA Prof. B.Buttarazzi A.A. 2012/2013 Sommario Contenuti del Corso Riferimenti Regole del Corso Materiale Didattico Scheduling Esami Strumenti Software 16/01/2013 2 Contenuti

Dettagli

Fondamenti di Informatica T1 Guida all uso di JDK e Eclipse

Fondamenti di Informatica T1 Guida all uso di JDK e Eclipse Fondamenti di Informatica T1 Guida all uso di JDK e Eclipse Tutor Melissa Licciardello melissa.licciardell2@unibo.it Melissa Licciardello Fondamenti di Informatica T1 1 / 27 Perchè venire in LAB? Dalla

Dettagli

Installazione del JDK 6

Installazione del JDK 6 Sommario Installazione del JDK 6 Anton Soppelsa Dipartimento di Ingegneria Elettrica http://www.die.unipd.it 15 Ottobre 2007 Sommario Sommario 1 Editor di testo Perché serve un editor di testo Editor per

Dettagli

Introduzione al linguaggio

Introduzione al linguaggio Capitolo 1 Introduzione al linguaggio Java è un moderno linguaggio di programmazione le cui origini risalgono al 1991, quando presso Sun Microsystems un team di programmatori, formato principalmente da

Dettagli

Linguaggio e Piattaforma Java

Linguaggio e Piattaforma Java Linguaggio e Piattaforma Java Davide Di Ruscio Dipartimento di Informatica Università degli Studi dell Aquila davide.diruscio@univaq.it. Sommario 2 2» Tecnologia Java: Linguaggio e Piattaforma» Java Virtual

Dettagli

Elementi del calcolatore: CPU

Elementi del calcolatore: CPU Elementi del calcolatore: CPU Elementi del calcolatore: Memoria Elementi del calcolatore: Memoria Elementi del calcolatore: Hard Disk Antefatto Sistema Operativo Come il computer appare Il calcolatore

Dettagli

Programmazione Java Avanzata Concetti su Java

Programmazione Java Avanzata Concetti su Java Programmazione Java Avanzata Concetti su Java Ing. Giuseppe D'Aquì Testi di Riferimento Java ( R. Liguori, P. Liguori), O'Reilly Hops Tecniche Nuove (2008) Java Virtual Machine Il codice scritto in Java

Dettagli

Corso Base. Liceo Norberto Rosa Bussoleno Prof. Angelo GIORGIO

Corso Base. Liceo Norberto Rosa Bussoleno Prof. Angelo GIORGIO Corso Base Liceo Norberto Rosa Bussoleno Prof. Angelo GIORGIO Java Java è un Linguaggio di Programmazione orientato agli oggetti. Un Linguaggio di Programmazione è un linguaggio ad alto livello, dotato

Dettagli

Claudio De Sio Cesari --- il linguaggio Object Oriented Java --- http://www.claudiodesio.com

Claudio De Sio Cesari --- il linguaggio Object Oriented Java --- http://www.claudiodesio.com 1 SECONDA EDIZIONE 2 3 Premessa Questo testo è basato sull esperienza accumulata dall autore, in anni di formazione erogata in diversi linguaggi di programmazione. In particolare, per Sun Educational Services

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

Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa

Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa di Ilaria Lorenzo e Alessandra Palma Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa Code::Blocks

Dettagli

Classi ed Oggetti in JAVA

Classi ed Oggetti in JAVA Classi ed Oggetti in JAVA Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it www.dii.unisi.it/~rigutini/

Dettagli

Linguaggi e Laboratorio. Panoramica su Java

Linguaggi e Laboratorio. Panoramica su Java Linguaggi e Laboratorio Laurea in Ingegneria Telematica Università Kore di Enna A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it - lezione 03 -

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

Cap.1 Framework dotnet e Ambiente di sviluppo

Cap.1 Framework dotnet e Ambiente di sviluppo High thoughts must have a high language. (Aristophanes) Cap.1 Framework dotnet e Ambiente di sviluppo in questo primo capitolo presentiamo l'ambiente di sviluppo che verrà utilizzato in questo corso. Si

Dettagli

LINGUAGGI COMPILATI ESECUZIONE DI UN PROGRAMMA LINGUAGGI COMPILATI LINGUAGGI COMPILATI

LINGUAGGI COMPILATI ESECUZIONE DI UN PROGRAMMA LINGUAGGI COMPILATI LINGUAGGI COMPILATI ESECUZIONE DI UN PROGRAMMA Il codice sorgente non è eseguibile dalla CPU, è necessario tradurlo in linguaggio macchina: un file binario contenente microistruzioni gestibili dalla CPU Diverse architetture

Dettagli

Lezione 2 Strumenti di sviluppo

Lezione 2 Strumenti di sviluppo Lezione 2 Strumenti di sviluppo Prima di inoltrarsi nello studio di Java, bisogna procurarsi tutti gli strumenti di sviluppo necessari. In questa lezione sono illustrate le soluzioni software di Sun Microsystems,

Dettagli

Geom. Giofrè Vincenzo Pasquale Il manuale per la facoltà di ingegneria

Geom. Giofrè Vincenzo Pasquale Il manuale per la facoltà di ingegneria Geom. Giofrè Vincenzo Pasquale Il manuale per la facoltà di ingegneria Copyright 1992 2006 SystemGVP Presentazione Il linguaggio Java nasce nel 1995 dai programmatori della Sun Microsystem. La sua popolarità

Dettagli

Integrated Development Environment (IDE) DevC++ 4.9.9.2

Integrated Development Environment (IDE) DevC++ 4.9.9.2 Integrated Development Environment (IDE) DevC++ 4.9.9.2 Manuale utente Data ultima revisione: 22/10/2008 Fondamenti di informatica Università Facoltà Corso di laurea Politecnico di Bari 1 a Facoltà di

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

Progetto Automi e Linguaggi Parser svliluppato con JLex e cup

Progetto Automi e Linguaggi Parser svliluppato con JLex e cup Progetto Automi e Linguaggi Parser svliluppato con JLex e cup Sviluppato da Santoro Carlo Maurizio Matricola:0108/528 Sviluppo terminato il: 18/06/06 TRACCIA DEL PROGETTO Si costruisca, utilizzando la

Dettagli

Dev C++ Prerequisiti. Note di utilizzo. Utilizzo di Windows Effettuare il download da Internet Compilazione di un programma

Dev C++ Prerequisiti. Note di utilizzo. Utilizzo di Windows Effettuare il download da Internet Compilazione di un programma Dev C++ Note di utilizzo 1 Prerequisiti Utilizzo di Windows Effettuare il download da Internet Compilazione di un programma 2 1 Introduzione Lo scopo di queste note è quello di diffondere la conoscenza

Dettagli

Java & Linux. Stefano Sanna Gruppo Utenti Linux Cagliari

Java & Linux. Stefano Sanna Gruppo Utenti Linux Cagliari Java & Linux Perché Java e Linux? Linux è un ottimo sistema operativo, disponibile per piattaforme desktop, server e su sistemi embedded. Java è un ottimo linguaggio di programmazione, con una libreria

Dettagli

Code::Blocks, installazione ed uso

Code::Blocks, installazione ed uso Code::Blocks, installazione ed uso Alessio Mauro Franchi Dipartimento DEIB, Politecnico di Milano, Milano 9 ottobre 04 Indice Introduzione Installare Code::Blocks: Windows 3 3 Installare Code::Blocks:

Dettagli

Struttura di un sistema operativo. Struttura dei Sistemi Operativi. Servizi per l utente generico. Servizi per l utente generico

Struttura di un sistema operativo. Struttura dei Sistemi Operativi. Servizi per l utente generico. Servizi per l utente generico Impossibile visualizzare l'immagine. Struttura di un sistema operativo Struttura dei Sistemi Operativi Servizi di un sistema operativo Interfaccia Utente Capitolo 2 -- Silberschatz Chiamate di sistema

Dettagli

Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console

Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console Il compilatore per i linguaggi c e c++ chiamato lcc-win32 è un prodotto gratuito scaricabile dal sito http://www.cs.virginia.edu/~lcc-win32/

Dettagli

Il linguaggio Java. Concetti base. I packages

Il linguaggio Java. Concetti base. I packages Il linguaggio Java I packages Concetti base Un package è una collezione di classi ed interfacce correlate che fornisce uno spazio dei nomi ed un controllo sugli accessi Un package facilita il reperimento

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 Laurea Ingegneria Informatica Laboratorio di Informatica. Capitolo 2. Il Sistema Operativo. Settembre 2006. Il Sistema Operativo 1

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica. Capitolo 2. Il Sistema Operativo. Settembre 2006. Il Sistema Operativo 1 Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 2 Il Sistema Operativo Settembre 2006 Il Sistema Operativo 1 Nota bene Alcune parti del presente materiale didattico sono derivate

Dettagli

INTERAZIONE CON L UTENTEL

INTERAZIONE CON L UTENTEL IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE

Dettagli

DevC++ vers. 4.9.9.2 Manuale d uso

DevC++ vers. 4.9.9.2 Manuale d uso DevC++ vers. 4.9.9.2 Manuale d uso Liceo Scientifico N. TRON di SCHIO (VI) Sommario 1 INTRODUZIONE... 3 2 SETUP... 5 2.1 Procedura di installazione... 5 2.2 Configurazione... 7 2.2.1 Opzioni dell ambiente...

Dettagli

JAVA Linguaggio e Piattaforma

JAVA Linguaggio e Piattaforma JAVA Linguaggio e Piattaforma romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp Roadmap Tecnologia Java: Linguaggio e Piattaforma Java Virtual Machine Storia Struttura di un programma Java

Dettagli

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. "Generate debugging information"

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. Generate debugging information FASE DEBUGGING: Prima della compilazione, si devono inserire 1 nel progetto informazioni per il debug cioè si devono visualizzare le opzioni di progetto seguendo il percorso: controllando che la voce Genera

Dettagli

Realizzazione di un applicazione per la visualizzazione grafica didattica e di debug per algoritmi in Java

Realizzazione di un applicazione per la visualizzazione grafica didattica e di debug per algoritmi in Java Sapienza Università di Roma Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica anno accademico 2008-09 Relazione finale su progetto interno Realizzazione di un applicazione per la visualizzazione

Dettagli

Esercitazione di Sistemi Distribuiti: Java RMI

Esercitazione di Sistemi Distribuiti: Java RMI Esercitazione di Sistemi Distribuiti: Java RMI Anno Accademico 2007-08 Marco Comerio comerio@disco.unimib.it Richiami Teorici Oggetti distribuiti 2-16 Usuale organizzazione di un oggetto remoto con un

Dettagli

SERVIZIO TELEMATICO ENTRATEL. Applicazione Invia Multifile

SERVIZIO TELEMATICO ENTRATEL. Applicazione Invia Multifile SERVIZIO TELEMATICO ENTRATEL Applicazione Invia Multifile Versione del documento: Novembre 2012 SERVIZIO TELEMATICO ENTRATEL... 1 APPLICAZIONE INVIA MULTIFILE... 1 1. Premessa... 3 2. Cartella di intallazione...

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

----------------------------------------------------------------

---------------------------------------------------------------- ---------------------------------------------------------------- utilizzo frequente di chiamate a.. A differenza del Pascal, il C permette di operare con assegnamenti e confronti su dati di tipo diverso,

Dettagli

Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005

Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005 Sommario Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005 Introduzione.................................................................................. 1 SOAP........................................................................................

Dettagli

La nuova generazione (NXT) di

La nuova generazione (NXT) di moria flash, 64Kbyte di RAM e clock a 48MHz. Un coprocessore Atmel AVR ad 8bit con 4Kbyte di memoria flash e 512Byte di RAM. Un CSR BlueCore 4, con 47Kbyte di RAM interna, memoria flash esterna ad 8Mbit

Dettagli

Indice. Introduzione PARTE PRIMA IL FRAMEWORK DI JAVASERVER FACES 1

Indice. Introduzione PARTE PRIMA IL FRAMEWORK DI JAVASERVER FACES 1 Indice Introduzione XI PARTE PRIMA IL FRAMEWORK DI JAVASERVER FACES 1 Capitolo 1 Introduzione a JavaServer Faces 3 1.1 Che cos è JavaServer Faces 3 1.2 La storia di JavaServer Faces 4 1.3 Gli obiettivi

Dettagli

TESTARE E CREARE APPLICAZIONI TESTUALI JAVA PER ANDROID CON ANDROID

TESTARE E CREARE APPLICAZIONI TESTUALI JAVA PER ANDROID CON ANDROID TESTARE E CREARE APPLICAZIONI TESTUALI JAVA PER ANDROID CON ANDROID Ho deciso di scrivere questa guida per tre motivi principali: 1) Avendo un tablet che ha la possibilità di essere usato per programmare,

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

Scheda 15 Accedere ai DataBase con JDBC

Scheda 15 Accedere ai DataBase con JDBC Scheda 15 Accedere ai DataBase con JDBC G IOVANNI PULITI Panoramica: che cosa è JDBC La API JDBC, introdotta per la prima volta con il JDK 1.0, è una API che permette di accedere a database relazionali

Dettagli

20 - Input/Output su File

20 - Input/Output su File 20 - Input/Output su File 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

Dettagli

PC/CSA. Manuale di utilizzo del PC/CSA Specifiche tecniche per lo scarico automatico dei dati dei pagamenti delle violazioni al Codice della Strada

PC/CSA. Manuale di utilizzo del PC/CSA Specifiche tecniche per lo scarico automatico dei dati dei pagamenti delle violazioni al Codice della Strada PC/CSA Manuale di utilizzo del PC/CSA Specifiche tecniche per lo scarico automatico dei dati dei pagamenti delle violazioni al Codice della Strada PC/CSA-SPF-1.0 Versione del 18.04.2001 SOMMARIO 1 INTRODUZIONE

Dettagli

SOMMARIO ESECUZIONE DI UN PROGRAMMA ESECUZIONE DI UN PROGRAMMA COMPILATORE

SOMMARIO ESECUZIONE DI UN PROGRAMMA ESECUZIONE DI UN PROGRAMMA COMPILATORE SOMMARIO Sviluppo ed esecuzione di un programma: Compilatore. Interprete. Compilatore e interprete. Sviluppo di un progetto. Ambiente integrato di programmazione: Visual Studio. ESECUZIONE DI UN PROGRAMMA

Dettagli

ISTRUZIONI XCODE. Autore: Luca Florio (luca.floriopolimi.it)

ISTRUZIONI XCODE. Autore: Luca Florio (luca.florio<at>polimi.it) ISTRUZIONI XCODE Autore: Luca Florio (luca.floriopolimi.it) XCode è l ambiente di sviluppo fornito da Apple che permette la creazione di applicazioni OSX e iphone. In questa guida vedremo come installarlo

Dettagli

Gestione delle eccezioni in Java

Gestione delle eccezioni in Java Gestione delle eccezioni in Java - Introduzione al concetto di eccezioni E possibile definire un eccezione come un situazione imprevista che il flusso di un applicazione può incontrare. È possibile gestire

Dettagli

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB.

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Web Server TOMCAT Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei - Tecnologie

Dettagli

Organizzazione della lezione. 15. Java Remote Method Invocation (3) Lo schema del Factory Design Pattern - 1. Factory design pattern

Organizzazione della lezione. 15. Java Remote Method Invocation (3) Lo schema del Factory Design Pattern - 1. Factory design pattern Organizzazione della lezione 15. Java Remote Method Invocation (3) Vittorio Scarano Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Il design pattern

Dettagli

le lettere dopo il punto non hanno nessun significato particolare.

le lettere dopo il punto non hanno nessun significato particolare. CAPITOLO 8 LAVORARE CON I FILES Pietro Buffa A questo punto ciascuno di voi dovrebbe riuscire a muoversi con una certa disinvoltura tra gli intricati anfratti del proprio disco. Del resto è anche vero

Dettagli