IDE – Ambiente di sviluppo
IDE - Integrated Development Environment
¾
e’ un Ambiente di Sviluppo Integrato che consente di creare in
modo semplice “progetti” composti da molti file e di
compilarli con un solo click
¾
semplifica l’iter dello sviluppo eliminando la necessità di
compiere operazioni ripetitive
¾
normalmente contiene un debugger grafico che consente di
eseguire l’applicazione passo-passo per vedere come si
comporta (Æcorrezione degli errori)
Telematica II
5. Esercitazione/Laboratorio 1
Corso di Laurea in Ingegneria Informatica
A.A. 2009-2010
2° Semestre
Prof. Giovanni Pascoschi
2
Eclipse – introduzione #1
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Eclipse – introduzione #2
Eclipse è un IDE multilinguaggio (JAVA, C/C++, PHP, ecc) open
source sviluppato inizialmente da IBM utilizzando JAVA
Progetti portati avanti dal consorzio di Eclipse
¾ La piattaforma eclipse ( Eclipse Platform )
¾ Il toolkit di sviluppo java ( Java Development ToolKit, JDT)
¾ Il toolkit di sviluppo C/C++ ( C++ Development ToolKit, CDT)
¾ L'ambiente di sviluppo di plug-ins (Plugin Development
Environment, PDE)
Successivamente il progetto fu reso open source e ceduto nel 2004
ad un consorzio no-profit indipendente che include tra le varie
aziende:
IBM, Borland, Merant, QNX Software, Rational, Red Hat, SuSE,
TogetherSoft, Oracle, HP, Sybase
La sola IBM ha investito in Eclipse circa 40 milioni di $ prima di
renderlo open source
IBM continua lo sviluppo di Eclipse tramite una società sussidiaria
chiamata OTI (Object Technologies International)
3
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
4
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Eclipse – introduzione #3
Installazione JDK 6.0
per installare JDK6 update 20 (File Size: 76.67 MB)
Architettura a plug-in
¾ Core : funzionalità di base
¾ Plug-in : sfruttano le funzionalità offerte dallo strato “core” e
cooperano tra loro per offrire servizi all’utente
¾ Eclipse richiede l’esecuzione di una JVM
¾ i plug-in potrebbero essere numerosi, ma viene utilizzata una
politica di caricamento “on demand” per minimizzare la
quantità di memoria necessaria (non necessari per i nostri
scopi)
5
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
http://java.sun.com/javase/downloads/index.jsp
¾ seguire le istruzioni per l’installazione
¾
requisiti S.O. : Windows (XP, Vista, Server 2003/2008, Win7);
Solaris (diverse versioni); Linux (diverse versioni)
per installare la documentazione di Java SE 6 Documentation :
Java SE Development Kit Documentation 6u18
jdk-6u18-docs.zip (File Size: 56.30 MB)
¾ decompattare nella sottocartella docs
6
Installazione Eclipse
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Eclipse - avvio
‰ eseguire il file eclipse.exe
per installare Eclipse andare dal website Eclipse Downloads “Eclipse
IDE for JAVA Developers” (File Size: 92 MB)
scompattare il file in una directory. Cio’ è sufficiente per usare
Eclipse Æ non occorre nessuna procedura addizionale di
installazione
‰ lo scopo fondamentale del workspace è la gestione delle risorse di
utente che sono organizzate in uno o più progetti di massimo livello
gerarchico
tutorial su Eclipse (inglese)
http://www.vogella.de/articles/Eclipse/article.html
‰ ogni progetto è associato ad una cartella del “workspace” di eclipse
(per comodità si puo’ conservare la stessa impostazione per tutti i
progetti)
7
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
8
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Eclipse - perspectives
Eclipse - views
per uno stesso workspace esistono piu’ perspectives (contenitore visuale),
che raggruppano funzionalità (view) in base all’operatività scelta dall’utente,
p.e.:
9
Java
sviluppo di codice sorgente
Debug
debug del programma
Fondamenti di Informatica II – A.A. 2008-2009
le views sono schede visualizzate nelle perspectives
che offrono alcune funzionalità correlate allo sviluppo
del software
le views possono essere ridimensionate/spostate nel
workspace
a cura di Pascoschi Giovanni
10
Workspace Eclipse
views
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Introduzione Eclipse
perspectives
Progetti, File sorgenti JAVA
In Eclipse i programmi sviluppati hanno la seguente organizzazione
views
views
11
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
12
File sorgenti (JAVA source file)
E’ un programma (estensione .java) in JAVA che implementa una
determinata classe
Progetti (Projects)
Nel caso di sviluppo di programmi con piu’ classi è necessario
distribuire il codice su più file. In questi casi tutti i file che
logicamente costituiscono un programma devono essere raggruppati
insieme. Un progetto (project) è una cartella dove vengono
conservati tutte le classi appartenenti a uno stesso programma.
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Creazione di un nuovo progetto JAVA
Creazione di una nuova classe JAVA
Creare una nuova
classe
(FileÆNewÆClass)
Creare un nuovo
progetto
di
tipo
“Java
Project”
(FileÆNewÆProject)
Specificare il nome
(p.e. Topolino) della
classe e impostare il
check box per la
creazione del metodo
main
Inserire il nome del
progetto
(p.e.
HelloWorld)
e
terminare il wizard
(finish)
Indicare
inoltre
package da usare
il
è possibile generare
in
automatico
lo
scheletro della classe
(main,
interfacce,
superclasse, ecc.)
13
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
14
Compilazione
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Esecuzione
Ci sono due possibilità :
compilazione
automatica
(Project
Æ
Build
automatically) Æ segnala in tempo reale gli errori
rilevati
compilazione on-demand (ProjectÆBuild all o Build
project)
15
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
16
per poter eseguire un
programma ci sono
diverse possibilità
1)
Run
Æ
Run
configurations
per
impostare una nuova
configurazione
di
esecuzione
di
tipo
“Java Application” ,
indicare il nome del
progetto, indicare la
main class Æ Run
2) cliccando con il tasto
destro del mouse sul
progetto e scegliendo
Run
as
Æ
Java
application
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Esempio di output del programma Eclipse
Debug in Eclipse
l’output del programma è visualizzato nella views Console (in
maniera simile al Visual C++)
17
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
e’ possibile verificare il funzionamento del programma tramite
la funzionalità di Debug
tramite il Debug è possibile eliminare malfunzionamenti di un
programma
cio’ è fattibile analizzando lo stato di esecuzione del
programma tramite breakpoints in punti prestabiliti
il debugging verrà analizzato piu’ in dettaglio in una lezione
successiva
18
Dimostrazione pratica Eclipse
19
a cura di Pascoschi Giovanni
Esercitazione di laboratorio Eclipse
Vengono illustrati i vari passi per creare progetti con Eclipse (editing,
compilazione, running)
Vengono illustrati alcuni esercizi assegnati nelle scorse lezioni con
le relative soluzioni in Eclipse (esercizio n.1, n.2 e n.3)
Fondamenti di Informatica II – A.A. 2008-2009
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
20
Svolgimento di un esercizio assegnato con Eclipse
¾
Cambiare l’esercizio 1 passando i valori dei due numeri tramite
parametri nella linea di comando
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Fine della lezione
Esercizio n.4
Realizzare l'implementazione della classe la cui specifica è riportata in seguito:
public class Stack {
// attributi
public final int MAX = 100;
// dimensione dell’array
private int testa;
// testa della pila
private int[ ] vett = new int[MAX]; // array della pila
// metodi
Stack( ) {
// costruttore
testa = MAX;
}
public int pop( );
// estrazione di un elemento
public void push(int val);
// inserimento di un elemento
public int top ( );
// legge l’elemento di testa senza estrarlo
public boolean full( );
// verifica che la pila è piena (true se vero)
public boolean empty( ); // verifica che la pila è vuota (true se vero)
public int get_num( );
// da’ il numero di elementi presenti nella pila
};
Domande?
21
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
Esercizio n.5
Realizzare l'implementazione della classe la cui specifica è riportata in seguito:
class Coda {
// attributi
public final int MAX = 100;
// dimensione dell’array
private int fine;
// indicatore riempimento della coda
private int[ ] vett = new int[MAX]; // array della coda
// metodi
Coda( ) {
// costruttore
fine = -1;
}
public int pop( );
// estrazione di un elemento
public void push(int val);
// inserimento di un elemento
public int top ( ); // legge l’elemento di inizio coda senza estrarlo
public boolean full( );
// verifica se la coda è piena (true se vero)
public boolean empty( ); // verifica se la coda è vuota (true se vero)
public int get_num( ); // da’ il numero di elementi presenti nella coda
};
23
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni
22
Fondamenti di Informatica II – A.A. 2008-2009
a cura di Pascoschi Giovanni