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
Riferimenti
• Docenti : Berta Buttarazzi
Ricevimento
• 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
[email protected]
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
LUN
MAR
MER
GIO
VEN
8.30-9.15
9.30-10.15
10.30-11.15
POJ
POJ
11.30-12.15
12.30-13.15
POJ
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
[email protected]
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.
2.
3.
16/01/2013
Esercizio sulla programmazione a oggetti
Esercizio sulla realizzazione di un algoritmo
Domande teoriche
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 tutto34il
16/01/2013
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
Programmazione in Java
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.
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
16/01/2013
tramite
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