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 Introduzione all ambiente di programmazione Java Descrizione e uso di Eclipse Primi esempi di programmi Programmazione imperativa Introduzione alla sintassi Java Tipi di dato elementari, variabili e assegnamento, costrutti sequenziale, if, while e for, e operazioni di I/O Funzioni e parametri Programmazione ad oggetti: Classi e Oggetti Java Incapsulamento, Ereditarietà, Polimorfismo Introduzione allo sviluppo di Web Application introduzione al Web Mobile Programming 16/01/2013 3
Obbiettivi Conoscenza di base del linguaggio JAVA Metodologie e tecnologie per la programmazione a oggetti Uso e Manipolazione di Software per applicazioni di tipo Object Oriented 16/01/2013 4
Output di fine Corso (20%) Conoscenze teoriche di metodologie informatiche Principi della programmazione Tecniche per l analisi di programmi e Algoritmi (40%) Tecniche di programmazione in ambiente Java Correttezza, efficienza e analisi del software (40%) Sviluppo di Applicazioni 16/01/2013 5
Testo di riferimento Titolo: Programmando Java Autori: B.Buttarazzi & A.Simonetta Editore : Carocci 2007 16/01/2013 6
Programma di esame 16/01/2013 7
Programma di esame 16/01/2013 8
16/01/2013 9
Docenti : Berta Buttarazzi Ricevimento Riferimenti Al termine delle lezioni in aula e in studio del docente (III Piano Edificio Ingegneria della Informazione) il mercoledì dalle 13 alle 15 Pagina web del corso http://www.uniroma2.it/didattica/poj/ 16/01/2013 10
16/01/2013 11
Registrazione al corso Per poter seguire il corso e sostenere gli esami e' necessario registrarsi al corso. La registrazione al corso avviene tramite e-mail da inviare al docente buttarazzi@info.uniroma2.it specificando come oggetto '' REGISTRAZIONE CORSO - POJ e nel corpo della mail il proprio nome, cognome, corso di laurea e numero di matricola Le registrazioni terminano 10 giorni dopo l'inizio del corso 16/01/2013 12
16/01/2013 13
Orario Lezioni 8.30-9.15 9.30-10.15 POJ 10.30-11.15 POJ LUN MAR MER GIO VEN 11.30-12.15 POJ 12.30-13.15 POJ 14.00-14.45 15.00-15.45 Lunedì Aula B2 Giovedì Aula C6 16/01/2013 14
Scheduling Esami Primo appello Giovedì 7 Febbraio 2013 - Aula B2 Nuovi Edifici ore 9:30 Secondo appello Giovedì 14 Febbraio 2013 - Aula B2 Nuovi Edifici ore 9:30 Terzo appello Giovedì 4 Luglio 2013 - Aula B2 Nuovi Edifici ore 9:30 Quarto appello Giovedì 5 Settembre 2012 - Aula B2 Nuovi Edifici ore 9:30 Quinto appello Giovedì 12 Settembre 2012 - Aula B2 Nuovi Edifici ore 9:30 <da confermare...> 16/01/2013 15
Prenotazione Esami La prenotazione all'esame avviene tramite e-mail da inviare al docente buttarazzi@info.uniroma2.it specificando come oggetto '' PRENOTAZIONE ESAME POJ Per ciascun appello le prenotazioni si aprono 10 giorni prima dell'esame e terminano 3 giorni prima dell'esame 16/01/2013 16
Regole del Corso Si consiglia di seguire in classe tutte le lezioni (almeno il 75% lezioni). Attenzione! Ogni informazioni anche sui cambiamenti verrà data esclusivamente a lezione Il ricevimento è alla fine di ciascuna lezione o in ufficio del docente il mercoledì dalle 13 alle 15 16/01/2013 17
Modalità di Esame Prova scritta Modalità tradizionale con esercizi da svolgere Prova orale Commento della prova scritta ed eventuali domande teoriche 16/01/2013 18
Criterio di Valutazione Il voto è determinato principalmente dal risultato ottenuto nella prova scritta In fase di verbalizzazione è previsto un orale domande sul compito + eventuale domanda su argomenti del corso 16/01/2013 19
Modalità della prova scritta Tutte le prove scritte sono composte da tre parti: 1. Esercizio sulla programmazione a oggetti 2. Esercizio sulla realizzazione di un algoritmo 3. Domande teoriche 16/01/2013 20
..esempio di esercizi 16/01/2013 21
..esempio di domande 16/01/2013 22
Regole per lo scritto Portare il libretto e un documento di riconoscimento una penna a inchiostro NERO fogli bianchi per annotazioni Non sono ammessi appunti, libri o altro materiale didattico. Ogni esercizio deve essere svolto in piena autonomia! Sono ammessi chiarimenti sul testo dell esame solo durante i primi 10 minuti all inizio dell esame. Al termine della prova scritta vanno restituiti solo i fogli d esame consegnati dal docente (correttamente compilati). 16/01/2013 23
Suggerimenti per lo scritto Usare una penna (NERA) a tratto sottile Tenete presente che il rosso viene usato per le correzioni e annotazioni da parte del docente! La matita non è accettata. Se necessario si può usare il retro del foglio per il completamento dello svolgimento di un esercizio. In questo caso specificare il numero dell esercizio 16/01/2013 24
Strumenti hardware & software 1 ) PERSONAL COMPUTER 2 ) INTERNET 3 ) STRUMENTI SOFTWARE 16/01/2013 25
Strumenti Software Per programmare in Java utilizzando come (IDE) ambiente di sviluppo integrato Eclipse abbiamo bisogno dei seguenti strumenti software: Java JDK Eclipse Si tratta di strumenti software open-source che possono essere scaricati liberamente da appositi siti internet.
Andare sul sito indicato nel link della pagina della didattica web : http://www.oracle.com/technetwork/java/javase/downloads/index.html e fare il download del software indicato
Andare sul sito indicato nel link della pagina della didattica web : http://www.eclipse.org/downloads/ e fare il download del software indicato
Installazione di JDK Una volta scaricato il JDK fare doppio click sul file e seguire le istruzioni. 16/01/2013 31
Installazione di JDK 16/01/2013 32
Installazione di JDK 16/01/2013 33
Cos è Eclipse? Eclipse è un Ambiente di sviluppo integrato (IDE -Integrated Development Enviroment) open-source ovvero una piattaforma integrata che consente di gestire l'intero processo di sviluppo di applicazioni Java scaricabile gratuitamente da: http://www.eclipse.org/downloads E necessario scegliere la versione adatta al proprio sistema operativo del file Eclipse IDE for Java Developers (92 MB) Windows Mac OS X Linux 32bit Linux 64bit Eclipse è abitualmente utilizzato da moltissimi sviluppatori in tutto il 16/01/2013 34 mondo in quanto è dotato di caratteristiche di alta qualità e produttività
Esecuzione Eclipse Scrivo la prima istruzione Java nel primo programma: System.out.println("Benvenuto al corso di Java"); 16/01/2013 35
16/01/2013 36
Compilo ed eseguo 16/01/2013 37
Il programma stampa a video la frase Benvenuto al corso Java" nella finestra di output. 16/01/2013 38
Uno sguardo al processo di sviluppo di un programma Java In Java i programmi sorgenti sono scritti in formato testo contenuto in file con estensione.java Questi file saranno compilati in altri file.class usando un compilatore (javac) Un file.class non contiene codice nativo per un particlare processore; esso contiene bytecodes il codice macchina della Java Virtual Machine (JVM ) Successivamente si usera un tool (launcher ) (java) per eseguire l applicazione su una istanza della Java Virtual Machine. 16/01/2013 39
Uno sguardo al processo di sviluppo di un programma Java Tramite la JVM, la stessa applicazione è in grado di essere eseguita su piattaforme diverse. La JVM è disponibile per in molti sistemi operativi diversi, il medesimo file.class può essere eseguito su Microsoft Windows Linux MacOS 16/01/2013 40
16/01/2013 41
16/01/2013 42
Il file.java contiene il programma sorgente creato. Il compilatore Java (javac) traduce il programma.java ( una o più classi Java) in ByteCode.class. Ciascuna JVM - diversa per ogni dispositivo - riceve il programma tradotto in ByteCode e lo interpreta nel linguaggio della macchina locale in modo che possa essere eseguito. Programmazione in Java 16/01/2013 43
Strumenti di Sviluppo per Dispositivi Mobili: EclipseMe (J2ME) EclipseMe è un plug-in (un programma non autonomo che interagisce con un altro programma per ampliarne le funzioni) di Eclipse che consente di creare le Midlet (applicazioni JAVA per smartphone che hanno preinstallata la J2ME Virtual Machine (mobile edition) in quantodotato delle librerie necessarie. Dopo aver creato il programma, consente di emulare il funzionamento tramite il Default ColorPhone(emulatore illustrato in figura) 16/01/2013 44
Strumenti di Sviluppo per Dispositivi Mobili: ADT (Android) ADT (Android Development Tools ) è un plug-in di Eclipse che permette di rendere molto più semplice e rapido il processo di sviluppo software visto che nativamente tutti i tools della SDK non sono accessibili tramite interfacce grafiche ma soltanto attraverso linea di comando. Dopo aver creato il programma, consente di emulare il funzionamento tramite 16/01/2013 emulatore 45
.ora possiamo iniziare ma would advise students to pay more attention to the fundamental ideas rather than the latest technology. The technology will be out-of-date before they graduate. Fundamental ideas never get out of date. David Parnas 16/01/2013 46