Post on 06-Dec-2014
description
ECLIPSE IDE
Felice Pescatore
2
• IDE sta per Integrated Development Environment• Esistono IDE pensati per ambiti specifici
• BlueJ, DrJava sono pensati come ambienti per l’insegnamento• Enfatizzano la semplicità di utilizzo essendo rivolti a principianti• Minimizzano la curva di apprendimento per consentire ai discenti
di concentrarsi sullo studio del linguaggio
• Eclipse, JBuilder, NetBeans, Visual Studio sono tool di sviluppo (e progettazione) professionali• Supportano necessità professionali• Richiesto una fase di apprendimento decisamente più lunga, cosa
che però verrà ripagata dal punto di vista operativo
IDE?
Un ampio ecosistema
Eclipse
Eclipse• Eclipse è un IDE multilinguaggio e
multipiattaforma scritto in Java.• E’ Open Source.• Può essere adattato alle esigenze più varie
semplicemente aggiungendo un plug-in.• Eclipse è scaricabile all'indirizzo www.eclipse.org
Eclipse: primo avvio• Eclipse non necessita di installazione• Per avviare eclipse è sufficiente eseguire eclipse.exe• E' disponibile per i sistemi operativi più diffusi
(Windows, Linux, Mac ...)
Tool bar
PerspectiveandFast Viewbar
ResourceNavigatorview
Stackedviews
Propertiesview
Tasksview
Outlineview
Bookmarksview
Menu bar
Messagearea
EditorStatusarea
Texteditor
Eclipse: Workbench (banco di lavoro)
Eclipse: Workbench, viste (1)Outline View:mostra i metodiimplementati e le variabiledefinite.
Package Explorer View:mostra i progetti delworkspace, le relativeclassi e i package
Eclipse: Workbench, viste (2)
Navigator View:mostra i progetti e tuttii file appartenenti ad essi
Eclipse: PerspectivesL’interfaccia grafica di Eclipse è organizzata a perspectives.Le perspectives non sono altro che dei raggruppamenti di funzionalità dell’IDE, fatti in base ad una specifica operazione di sviluppo. La Java perspective ad esempio riunisce strumenti di stesura e organizzazione del codice mentre la Debug perspective fornisce strumenti in fase di debug.
Eclipse: Help
• JDT = Java Development Tools• Stato dell’Arte nello sviluppo di ambienti
per Java
• Realizzati al top della piattaforma Eclipse• come plug-in di Eclipse• utilizzando le API per l’estensione di
Eclipse
• Inclusi nel progetto Eclipse Project• installabile come feautures separata• parte dell’Eclipse SDK
Eclipse: Java Development Tools
• Messaggi di errore significativi• Genera codice eseguibile anche in presenza di
errori• Compilazione (incrementale) automatica• Alte performance• Gestione di grandi progetti• Check della sintassi• Analisi delle strutture all’intero dei file di
codice• Risoluzione dei nomi• Help contestualizzato• Refactoring• Ricerca
Eclipse e Java
• Eclipse all'avvio cerca la JVM del sistema e setta il Path di default in base a questa, quindi non è necessario impostare alcun Path per iniziare a lavorare.
• Se un progetto dovesse utilizzare una versione di JVM diversa da quella di default è necessario modificare il Path di quel progetto.
Eclipse e Java: path
• Per settare il Path di un progetto cliccare su Nome_Progetto -> Properties nella vista Package Explorer o in quella Navigator.
• Nel menu di sinistra scegliere Java Build Path e nella scheda Libraries cliccare su Add Librarie.
• Nella schermata Add Librarie cliccare su JRE System Librarie e selezionare dove si trova la JVM desiderata (cartella /jre)
Eclipse e Java: path (2)
• Per settare il Classpath di un progetto cliccare su Nome_Progetto->Properties nella vista Package explorer o in quella Navigator.
• Nel menù di sinistra scegliere Java Build Path e nella scheda Libraries si possono aggiungere nel classpath file jar, intere directory, ecc…
Eclipse e Java: classpath
Eclipse e Java: classpath (2)
Vista principale basata sui file di progetto
Javaproject
package
class
field
method
Javaeditor
Eclipse e Java: area di lavoro
Gestione ad albero della gerarchie
Typehierarchy
Selectedtype’s
members
Eclipse e Java: area di lavoro (2)
Ricerca di elementi Java• Per dichiarazione o reference• Inclusione delle librerie e/o di altri progetti
Hitsflaggedin marginof editor
All search results
Eclipse e Java: area di lavoro (3)
Evidenziando un elemento viene visualizzato il relativo javadoc
Eclipse e Java: inline javaDoc
Completamento automatico dei metodi
List of plausible methods Doc for method
Eclipse e Java: auto-completamento
Preview
Clickto seefixes
ProblemQuickfixes
Eclipse e Java: errori sintatticiGli errori sintattici vengono evidenziati e viene proposta una alternativa
Statementtemplate Preview
Eclipse e Java: code templateSuggerimento di pezzi di codice standard
Method stub insertionfor inherited methods
Method stub insertion for anonymous inner types
Eclipse e Java: stubGrazie all’editor è possibile creare automaticamente gli stub dei metodi
Variable namesuggestion
Argument hints andproposed argumentnames
JavaDoccode assist
Suggerimenti per la scrittura di codice ben strutturato
Eclipse e Java: best practice
• Local method history• Code formatter• Source code for binary libraries• Built-in refactoring
Eclipse e Java: altre caratteristiche
Eclipse e Java: nuovo progetto• Cliccare su File -> New ->
Project…• Scegliere Java Project.• Nella finestra New Java
Project dare un nome al progetto e cliccare su «Finish».
Eclipse e Java: nuova classe• Per creare una nuova classe fare click con il
tasto destro su un package nella vista• Package Explorer o Navigator, poi scegliere
New -> Class.
Eclipse e Java: nuova classe (2)
• Digitare il nome della nuova classe.
• Scegliere l'eventuale package della classe.
• Scegliere gli attributi della classe (public, private...)
Eclipse e Java: nuova classe (3)
La nuova classe appare nella vista sulla sinistra e l’editor mostra il suo codice generato.
Eclipse e Java: esecuzione• Per eseguire il progetto corrente, cliccare sul
menù “Run” e scegliere “Run…”• Nella finestra Run Configuration Manager
creare una nuova Run configuration e dargli un nome.
New RunConfiguration
Eclipse e Java: esecuzione (2)
• Nel Run Configuration Manager scegliere a quale progetto si riferisce la nuova configurazione ed in quale classe si trova il main. Infine cliccare su Run
Eclipse e Java: esecuzione (3)
Se il metodo main da eseguire richiede dei parametri questi possono essere settati al momento della creazione della Configurazione di Run nella scheda Arguments.
Eclipse e Java: esecuzione (4)
Per rieseguire l’ultimaconfigurazione è sufficiente premere Ctrl + F11. Le configurazioni create possono essere richiamate dal menù “Run”
Eclipse e Java: debug
• Non è molto diverso rispetto all’esecuzione… occorre cliccare sul menù Run e scegliere Debug…
• In debug scegliere una configurazione già esistente e procedere con il Debug.
Eclipse e Java: debug (2)
L’operazione di debug avviene nella perspective debug.
Eclipse e Java: debug (3)
• Dall’editor possiamo inserire i breakpoint per il debug, basta fare doppio click a bordo riga.
• Dal configurations manager possiamo scegliere se fermare il debug all’inizio del metodo main.
Eclipse e Java: debug (4)
• Dalla debug perspective possiamo vedere (e modificare) i valori di variabili ed espressioni.
Es: nel codice ho una variabile intera chiamata i di valore 10. Posso vedere e modificare il valore
Eclipse e Java: export
• E' possibile esportare l'intero progetto con un file jar cliccando sul nome del progetto nella vista Package Explorer e scegliendo Export.
• Nella finestra seguente scegliere Java->Jar, quindi specificarne la configurazione.
Eclipse e Java: export (2)
• Per creare la documentazione (javadoc) del progetto cliccare sul nome del progetto nella vista Package Explorer e scegliere Export.
• Nella schermata successiva scegliere Java->Javadoc e seguire il wizard.
Eclipse e Java: refactoringTramite il refactoring è possibile riorganizzare il codice
• incoraggia l’esplorazione del codice stesso• favorisce la scrittura di codice di qualità,
permettendo di migliorare il codice scadente
List of changes
“before” vs.
“after”
Eclipse e Java: refactoring (2)
Prima di completare il refactoring è possibile comparare le modifiche e confermarlo selettivamente
• Tipiche attività di refactoringo Organizzare gli «import»o Rename {field, method, class, package}o Spostamento {field, method, class}o Estrazione di un metodoo Estrazione di una variabile localeo Definizione inline di una variabile localeo Riordinare i parametri di un metodo
Eclipse e Java: refactoring (3)