MokaByte 76 - Luglio Agosto 2003 
Java copre il sole e nasce Eclipse
di
Marco Ventra
"Quella dell'Open Source è l'unica strada da perseguire per poter ottenere un tools integrato su una piattaforma aperta" (dal sito ufficiale IBM).

Introduzione
Quanto tempo passato alla ricerca di un ambiente per lo sviluppo in Java che avesse le caratteristiche sufficienti per accontentare tutti. Ogni volta però, a balzare agli occhi erano sempre i difetti: quello costa troppo, e quello è troppo brutto, quello è scomodo, questo è poco performante, codesto non è cross-platform. E via dicendo. Un bel giorno (come nella migliore delle favole) tutto questo svanisce. Il buio ovattato dall'indecisione ad un tratto si illumina con la luce del sole che fa capolino da dietro la luna e si scopre qualcosa che accontenta un po' tutti.

 

Nasce una stella
"Eclipse" infatti, progetto che annovera tra i suoi sostenitori anche la IBM, ha le caratteristiche giuste per essere eletto GUI dell'anno. Accattivante, leggero e performante (se si esclude un po' di attesa durante la visualizzazione dello splash-screen), assolutamente cross-platform, con integrati i tool per quasi ogni esigenza di sviluppo (controllo di versione, tools per il controllo diretto di JBoss, Tomcat, MySql, supporto per Ant, ...), è la rivelazione della sua categoria. Una piacevole novità nel panorama dei tools di sviluppo. Oltre a tutto questo "Eclipse" è concepito con un'architettura interna basata su plug-in e completo della documentazione per l'implementazione degli stessi. Una manna dal cielo per chi gradisce il concetto di "se non ce l'hai, ... fattelo".

Dimenticavo la cosa fondamentale. E' GRATIS. Infatti "Eclipse" viene fornito sotto licenza GNU. Un software del valore di 40 milioni di dollari, messo a disposizione della comunità dei programmatori, come dichiarato nella relazione di "Bilancio consolidato del 2001" di IBM.
Rispettando la lunga tradizione di innovazione, l'IBM Software Group ha ancora una volta guidato il mercato nell'area dei Web Services affermandosi come prima azienda nel commercializzare prodotti basati su questa tecnologia. L'impegno assunto nei confronti di Linux e del movimento Open Source, inoltre, si è concretizzato grazie agli oltre 40 milioni di dollari in software di sviluppo applicativo donati al consorzio Eclipse.org.
"Eclipse" ha apparentemente tutto quanto si possa desiderare e forse anche qualcosa in più ed è la ragione per cui a questo articolo è stato dato un taglio molto elementare al fine di infondere in più persone la curiosità di provarlo.

 

Prepariamo il necessario
La predisposizione di quanto necessario per lavorare con "Eclipse" è estremamente semplice e veloce. I passi descritti di seguito,sono stati eseguiti in ambiente Microsoft Windows.
Prima di installare "Eclipse" è necessario installare il JDK di Java che possiamo scaricare (ammesso di non averlo già installato sulla propria macchina) all'indirizzo "http://java.sun.com/j2se/1.4.1/index.html" previo una piccola operazione di registrazione. Una volta installato il JDK, ci si deve però ricordare di inserire il percorso della directory "bin" di quest'ultimo nella variabile PATH in modo da consentire all'applicazione di trovare il necessario per l'esecuzione.
Procurarsi "Eclipse" è semplicissimo, basta scaricarlo dal sito ufficiale all'indirizzo "http://download.eclipse.org/downloads/drops/R-2.1-200303272130/eclipse-SDK-2.1-win32.zip" (attualmente la versione più recente è la 2.1 che è quella presa in considerazione dal presente articolo) e l'installazione è veramente un gioco da ragazzi. Per effettuarla basta scompattare il file in formato zip e, una volta ottenuta la directory "eclipse", lanciare l'eseguibile "eclipse.exe" che vi si trova all'interno. Questo effettuerà automaticamente alcune operazioni per completare la fase di installazione e dopo pochi secondi vi troverete immersi nel nuovo ambiente. E il gioco è fatto.


Figura 1
- Ecco come si presenta Eclipse al primo avvio
clicca sull'immagine per ingrandire

 

Personalizziamo il nuovo ambiente
Iniziamo a familiarizzare con l'ambiente di lavoro di "Eclipse". La finestra che costituisce l'ambiente di lavoro contiene più prospettive. Queste non sono altro che l'insieme delle finestre che riguardano aspetti diversi del nostro progetto ed ognuna di esse può essere utilizzata per controllare le risorse del progetto.
A sinistra troviamo la barra degli shortcut all'interno della quale si può scegliere la prospettiva desiderata. Il primo bottone in alto raffigurante una finestra con un "+" di colore giallo, serve per scegliere la vista desiderata da un menù che provvede automaticamente ad inserire la vista selezionata all'interno della barra di shortcut in modo che possa essere utilizzato in futuro.
Per aggiungere più viste alla nostra prospettiva corrente possiamo utilizzare il menù "Windows>Show view". Per reimpostare la prospettiva al suo stato originale, utilizzate il menù "Windows>Reset Perspective". Una volta organizzata la nostra prospettiva, possiamo salvarla utilizzando la "Windows>Save as". Possiamo adattare le viste, le prospettive e le nuove operazioni di menù che compongono la nostra prospettiva utilizzando il menù "Windows>Customize perspective".

 

Tutti al lavoro
Dopo aver familiarizzato con il nuovo ambiente, non rimane che iniziare a lavorare con l'obiettivo di realizzare la nostra applicazione Java.
La prima operazione da effettuare per iniziare un nuovo lavoro è quella di creare un nuovo progetto. L'operazione è semplice. Dal menù "File>New>Project" verrà aperta una finestra in cui sarà necessario indicare la tipologia di progetto desiderata e nella quale sceglieremo ovviamente "Java Project".
Nella finestra successiva dovremo indicare il nome che vogliamo attribuire al nostro progetto (nel nostro caso un semplicissimo e banalissimo "test") inoltre, ci viene richiesto anche il percorso di lavoro da utilizzare. Questo ci consente di allocare il progetto sui supporti prescelti e di stabilire quindi il Workspace preferito.
Nella finestra che segue relativa ai settaggi particolari del progetto è possibile indicare i vari path del progetto ("src", "bin", ...), le librerie e i file JAR esterni necessari.
In una fase più avanzata si vedrà come sia importante gestire questo aspetto per strutturare correttamente il nostro progetto e ottenere vantaggi incommensurabili in termini di chiarezza e usabilità, ma per il momento ci limiteremo a
creare un nuovo folder per i sorgenti ed assegnare il folder per il deploy delle classi.

Avendo selezionato la linguetta "Source", clicchiamo sul tasto "Add Folder" poi su "Create new folder" e indichiamo la nuova directory "src". Confermando il tutto ci viene richiesto se vogliamo indicare come output folder la directory "\test\bin". Se rispondiamo affermativamente, sarà "Eclipse" stesso a creare il folder di deploy delle classi.




Figura 2
- Si scelgono i path del progetto

La pressione del tasto "Finish" avvierà definitivamente la fase di creazione e ci troveremo nel cuore vero e proprio del nostro progetto.
Prima di scrivere del codice nel nostro progetto, dovremmo dedicare un po' di tempo ancora a configurare i parametri che desideriamo per il nostro Editor.
Per fare questo utilizziamo il menù Windows>Preferences che aprirà una finestra nella quale si trova la vera e propria stanza dei bottoni di "Eclipse".
Selezionando la sezione relativa a "Java" e "Code Formatter", per poter gestire le modalità di creazione del codice in automatico (ci tengo particolarmente perchè sono molto pignolo in merito), nella linguetta "New Lines" si devono fleggare tutte e cinque le voci proposte:

  • Insert a new line before an opening brace;
  • Insert new lines in control statements;
  • Clear all blank lines;
  • Insert new line between 'else if';
  • Inset a new line inside an empty block;

mentre nella linguetta "Style" si deve deselezionare "Insert space after a cast". Naturalmente si tratta delle scelte dettate dal mio personalissimo gusto e dalla modalità alla quale io sono abituato. Ognuno potrà fare le scelte che ritiene più giuste in base alle proprie abitudini.

Per continuare il lavoro, dobbiamo assicurarci di essere nella giusta prospettiva (prospettiva Java) e scegliere dal menù principale "File>New>Class" che ci consentirà di aggiungere la prima classe al progetto.
Per la creazione di una nuova classe ci viene richiesta una serie di informazioni che non sarebbero certo trascurabili in un contesto di lavoro più avanzato (il package, gli eventuali modifiers, le interfacce, etc.). In questa fase ci limiteremo a dare alla nostra classe un nome ("test", tanto per cambiare) e a fleggare la richiesta di creazione automatica del metodo "main".


Figura 3 - Creazione della prima classe.

Non ci resta che aggiungere un po' di codice alla nostra classe per avere un perfetto programma funzionante e scritto in java utilizzando "Eclipse".
Possiamo utilizzare una delle caratteristiche fondamentali di "Eclipse", il "Content code assist". Basterà quindi inserire tra le graffe del metodo "main" la parola "sysout" e premere la combinazione di tasti ctrl + space per ottenere il codice praticamente scritto. Inserendo tra le parentesi il carattere ["] questo verrà duplicato e il nostro cursore si posizionerà esattamente nella posizione giusta per farci iniziare a scrivere la nostra fatidica frase "Ciao mondo!". Otterremo così con pochissimo sforzo e rendendoci conto di come "Eclipse" ci aiuti nella stesura, il codice seguente:

System.out.println("Ciao mondo");

Sarà a livello embrionico, sarà un po' scarno, sarà limitato, ma è pur sempre un programma.


Figura 4
- Ciao mondo
(clicca sull'immagine per ingrandire)

La nostra opera è conclusa. Basterà adesso individuare sulla barra degli strumenti l'icona di un bottone che raffigura un uomo che corre. Cliccandola si aprirà una finestra in cui ci verrà richiesto quanto necessario per avviare il nostro programma: in che modo lanciarlo (sceglieremo ovviamente "Java Application"), la classe di partenza (è già indicata la classe "test") e nelle linguette successive altre informazioni (tra cui in futuro potrà essere molto importante la linguetta relativa ai "parametri").
Fatto questo, il programma dovrebbe partire e dovrebbe aprirsi una finestra ulteriore denominata "Console" all'interno della quale potremo vedere l'output della nostra procedura. E il gioco è fatto.


Figura 5 - Facciamolo partire

 

Conclusioni
Parlando di "Eclipse", non si può far a meno di focalizzare l'attenzione su alcune delle caratteristiche base che lo rendono un ambiente molto efficace. Di fondamentale importanza sono: il controllo sintattico automatico e immediato, l'autocompletamento dei metodi, i templates che velocizzano la stesura del codice e, non utlima, la quasi totale integrazione dei molti tools esterni. Tutti questi aspetti meriterebbero certamente un approfondimento specifico che però mi riservo di fare in altri eventuali successivi appuntamenti in modo da poter dedicare maggiore attenzione ad ognuno di essi. Ritengo comunque che una particolare attenzione dovrebbe essere dedicata all'aspetto più affascinante di "Eclipse" che è certamente costituito dal fatto che la sua architettura interna sia concepita in modo da permettere la costruzione di plug-in (mi piace pensare ad un ambiente in cui se una cosa che ti serve non c'è, te la puoi costruire). Come ha dichiarato Steve Mills della divisione software di IBM: "Vogliamo fare per gli sviluppatori di applicazioni quello che Linux e Apache hanno fatto per il mercato dei sistemi operativi e degli Web server". Sentiremo quindi sempre di più parlare del progetto "Eclipse" anche perché esso si propone come una piattaforma Java e XML based, perfettamente cross-platform, con la quale interfacciarsi facilmente e che offre ai suoi utilizzatori una gamma quasi infinita di possibilità di espansione.
Se volete lavorare in Java, dovete provarlo.

Links utili
www.eclipse.org;
www.omondo.com;

Marco Ventra si occupa di analisi e sviluppo software e può essere contattato all'indirizzo info@marcoventra.com

MokaByte® è un marchio registrato da MokaByte s.r.l. 
Java®, Jini® e tutti i nomi derivati sono marchi registrati da Sun Microsystems.
Tutti i diritti riservati. E' vietata la riproduzione anche parziale.
Per comunicazioni inviare una mail a info@mokabyte.it