Software Architecture Lab www.sal.disco.unimib.it Programmazione con Java Eclipse Outline • Eclipse: concetti generali – Definire un workspace – Creare un project – Importare un file – Utilizzo Software Architecture Lab www.sal.disco.unimib.it Eclipse 2 1 Introduzione • Eclipse – è un ambiente di sviluppo – disponibile per diverse piattaforme – scaricabile liberamente da qui: http://www.eclipse.org/ • seguendo il collegamento Downloads • versione da scaricare Eclipse IDE for Java Developers (circa 150 MB) – occorre aver già installato Java Software Architecture Lab www.sal.disco.unimib.it Eclipse 3 Definizioni • Workspace – area in cui è memorizzato tutto il software relativo ad un grande sistema software – corrisponde ad una cartella sul file system e tutte le cartelle ed i file in esso contenuti • Project – un grande sistema software è realizzato come un insieme di progetti correlati – un project rappresenta dunque una porzione di un sistema software, ovvero una porzione di workspace – in pratica, un insieme di classi Software Architecture Lab www.sal.disco.unimib.it Eclipse 4 2 In pratica… • Occorre definire il workspace – al primo avvio oppure – quando si desidera creare un nuovo workspace • Due modi per farlo: 1. 2. creazione di una cartella all’interno del file system che rappresenta il workspace e poi si lancia Eclipse e si specifica la cartella creata si lancia Eclipse e si crea la cartella che funge da workspace Software Architecture Lab www.sal.disco.unimib.it Eclipse 5 Avvio di Eclipse (1/3) • Schermata iniziale di selezione del workspace Software Architecture Lab www.sal.disco.unimib.it Eclipse 6 3 Avvio di Eclipse (2/3) • Al primo utilizzo di un workspace compare la schermata di benvenuto Si clicca sul pulsante a destra per chiudere la schermata Software Architecture Lab www.sal.disco.unimib.it Eclipse 7 Avvio di Eclipse (3/3) Schermata iniziale Software Architecture Lab www.sal.disco.unimib.it Eclipse 8 4 Project • Qualsiasi classe che si scrive appartiene ad un project • Definire un nuovo project • Aggiungere classi ad un project esistente Software Architecture Lab www.sal.disco.unimib.it Eclipse 9 Definire un nuovo project (1/4) File New Java Project Software Architecture Lab www.sal.disco.unimib.it Eclipse 10 5 Definire un nuovo project (2/4) Inserire il nome del project Il resto lo lasciate invariato e click su next o finish Software Architecture Lab www.sal.disco.unimib.it Eclipse 11 Definire un nuovo project (3/4) • Se nella schermata precedente è stato cliccato next, compare questa schermata • Si conferma con Finish Software Architecture Lab www.sal.disco.unimib.it Eclipse 12 6 Definire un nuovo project (4/4) • Schermata finale Software Architecture Lab www.sal.disco.unimib.it Eclipse 13 Aggiungere la prima classe (1/3) • File ‐> New ‐> Class • Pulsante Software Architecture Lab www.sal.disco.unimib.it Eclipse 14 7 Aggiungere la prima classe (2/3) Inserire il nome della classe Software Architecture Lab www.sal.disco.unimib.it Eclipse 15 Aggiungere la prima classe (3/3) • Adesso si può iniziare a definire attributi, metodi e costruttori Software Architecture Lab www.sal.disco.unimib.it Eclipse 16 8 Primo esercizio • Si definiscono – La classe Primo con 2 attributi di tipo intero a visibilità pubblica – la classe ProvaPrimo che definisce il metodo main. Nel main vengono: • istanziati due oggetti di tipo Primo • assegnati valori fissi agli attributi • e infine stampati a video gli stato dei due oggetti • Si esegue il main della classe ProvaPrimo all’interno di Eclipse Software Architecture Lab www.sal.disco.unimib.it Eclipse 17 Tips 1 • Quando si usa la dot notation, Eclipse suggerisce quello a cui si può accedere dell’oggetto scrivendo p1. viene fuori il menu a tendina con la lista degli attributi e metodi accessibili Software Architecture Lab www.sal.disco.unimib.it Eclipse 18 9 Tips 2 • Quando si usa la dot notation, Eclipse suggerisce quello a cui si può accedere dell’oggetto e, se è un metodo corredato da documentazione, visualizza la documentazione relativa scrivendo System.out.p... viene fuori il menu a tendina con la lista degli attributi e metodi accessibili che iniziano con la p e più a sinistra la relativa documentazione Software Architecture Lab www.sal.disco.unimib.it Eclipse 19 Eclipse 20 Tips 3 • Content assist – CTRL space bar Software Architecture Lab www.sal.disco.unimib.it 10 Compilazione? Errori? (1/3) • Ogni programma va compilato prima di poter essere eseguito • Eclipse automaticamente compila quando si edita del codice Esempio di errore lo si riconosce da: sottolineatura in rosso la x sul bordo Software Architecture Lab www.sal.disco.unimib.it Eclipse 21 Compilazione? Errori? (2/3) viene visualizzato il tipo di errore se ci si sposta con il cursore del mouse sulla crocetta Software Architecture Lab www.sal.disco.unimib.it Eclipse 22 11 Compilazione? Errori? (3/3) Lo stesso errore, ma avendo salvato il sorgente in diversi punti ci si accorge dell’errore Tipo di errore Software Architecture Lab www.sal.disco.unimib.it Eclipse 23 Esecuzione • L’esecuzione si può lanciare in diversi modi • Selezionare il file che contiene il main pulsante Run da Menu Run Run oppure Run As Java Application pulsante destro del mouse, Run As Java Application Software Architecture Lab www.sal.disco.unimib.it Eclipse 24 12 Esecuzione: output • L’output viene visualizzato nella Console Software Architecture Lab www.sal.disco.unimib.it Eclipse 25 Importare una classe • Vorremmo usare la classe SavitchIn per leggere i valori degli attributi di p1 e p2 (al posto della classe Scanner) • Vorremmo che facesse parte del project • Due modi per farlo – copia – import Software Architecture Lab www.sal.disco.unimib.it Eclipse 26 13 Importare una classe – copia (1/2) • Copiare il file SavitchIn.java nella cartella src creata da Eclipse workspace project Software Architecture Lab www.sal.disco.unimib.it Eclipse 27 Importare una classe – copia (2/2) • Dare il focus al pannello ‘Package Explorer’ • Menu File – Refresh Software Architecture Lab www.sal.disco.unimib.it Eclipse 28 14 Importare una classe – import (1/2) • File – Import Software Architecture Lab www.sal.disco.unimib.it Eclipse 29 Importare una classe – import (2/2) Directory sorgente Directory destinazione Software Architecture Lab www.sal.disco.unimib.it Eclipse 30 15