MokaByte Numero 18 - Aprile 1998
Foto
 
JavaOne terza edizione
di
Giovanni Puliti
Una sintesi di quello che si è potuto vedere e provare alla manifestazione tenutasi a S.Francisco alla fine di marzo. 

 


 
 
 

 


 

Nei giorni dal 24 al 27 di marzo, Sun ha orgnanizzato, la terza edizione di JavaOne, la conferenza più importante a livello mondiale dedicata esclusivamente a Java.
La redazione di Mokabyte era presente con un inviato (il sottoscritto), mandato per l’occasione per carpire le  ultime novità del settore.


 

Come gli anni precedenti, la sede scelta  è stata San Francisco,  letteralmente invasa, per i quattro giorni della manifestazione, da una folla di persone facilmente identificabili grazie ai numerosi gadget che venivano forniti ad ogni iscritto.
Il numero dei partecipanti, sopratutto se confrontato con gli anni passati,  può dare indirettamente una conferma della crescita di Java e dell’interesse che vi ruota attorno:  voci ufficiose stimavano infatti il pubblico intorno alle 14000 presenze,  contro le 5000 e 10000 delle edizioni passate.
A  parte i facili entusiasmi, devo dire che, in tutto il gigantesco mare di informazioni e di novità presentate, si è avuta l’impressione di assistere a qualcosa di nuovo per quanto riguarda Java: che questo potesse essere l’anno del definitivo conscramento di Java e della tecnologia annessa, lo si è capito subito in base ad alcuni segnali che sono arrivati alla platea dei partecipanti, ma soprattutto in base al nuovo atteggiamento di Sun nei confronti del linguaggio.
Infatti, mentre i primi due anni dell’era Java (ricordo che un anno Java, si misura, come amano scherzosamente dire da quelle parti, a partire dalla conferenza JavaOne, e dura esattamente 12 mesi), hanno rappresentato la scoperta di Java (si può parlare di scoperta dato che molto probabilmente nemmeno Sun poteva immaginare il successo che avrebbe avuto), e successivamente  i primi passi verso qualcosa che si potesse definire seriamente linguaggio di sviluppo (con la verisone 1.1  del JDK finalmente si sono introdotti gli elementi essenziali, come la gestione dei database, per poter sviluppare con tale linguaggio).
In questo periodo Sun ha creduto molto nelle proprie mosse, ma al tempo stesso ha sempre  mantenuto un atteggiamento di estrema prudenza,  per non commettere passi falsi che potessero screditare Java, proprio nel momento più delicato, quello della creazione e della definizione della piattaforma. 
In tutto questo periodo  il molto software rilasciato e le novità tecnologiche presentate,  sono sempre state appoggiate dalla  casa, la quale però non si è mai  sbilanciata più di tanto  in affermazioni su quelle che potessero essere le reali possibilità di  Java, lasciando in un certo senso l’iniziativa agli sviluppatori di verificarne l’utilizzabilità per i propri scopi.
Adesso qualcosa sembra essere cambiato: Sun ha scoperto le carte ed ha mostrato una insolita sicurezza nei confronti di quello  che attualmente è il suo punto di forza: la tecnologia Java.
Parlando sia con  altri giornalisti presenti, che  con semplici partecipanti, ho potuto convalidare le mie impressioni, secondo le quali questo dovrebbe essere l’anno in cui Java si proporrà, oltre che come il linguaggio multipiattaforma, orientato alla connessione, alla sicurezza ed alla multimedialità,  come uno strumento solido per essere utilizzato in tutti i settori dello sviluppo, in maniera efficace.

Due sono forse i punti fondamentali su cui si è puntato alla conferenza:  Java come  piattaforma globale, e Java come piattaforma standard.
Nel primo caso si è fatto riferimento al cosiddetto Spazio Virtuale Java,  un ambiente multiapiattaforma e  multiporpose, composto da device eterogenei in grado di far eseguire una JVM: in  tale insieme di oggetti  possiamo trovare sia un Personal Computer  o Workstarion (indipendentemente dal sistema operativo), sia  un telefono cellulare, sia i piccoli sistemi dotati di chip incorporati compatibili con Java (dalle carte di credito intelligenti, a sistemi di riconoscimento incorporati in oggetti di uso quotidiano, come il JavaRing), tutti dotati di JVM incorporata e quindi in grado di eseguire una applet o una applicazione.
Per globalizzazione di Java si intende inoltre il fatto che, con le ultime API orientate alla multimedialità (Java2D, Java3D, e Java MIDI), le nuove per la gestione della sicurezza, od infine quelle per la programmazione  Server Side (Servlet API),  Sun ha volutamente coprire tutti i settori dello sviluppo,  dando vita ad un linguaggio utilizzabile per la realizzazione di ogni tipo  di applicazione.

 Il secondo aspetto, quello della  standardizzazione della piattaforma, è da sempre uno degli obiettivi primari del progetto Java, ed adesso lo è più che mai.
La vittoria di Sun nella battaglia legale nei confronti di Microsoft,  è da questo punto di vista un fatto molto importante,  non tanto per adesione ad un partito (Sun) piuttosto che ad un altro (Microsoft).
Credo infatti che le ultime scelte di Microsoft non fossero in linea con la filosofia Java, e non  riesco  a capire dove potesse essere il vantaggio di inventare un secondo linguaggio, clone dell’originale, ma incompatibile col primo.
In ogni caso adesso la situazione sembra essere molto più chiara: esiste un solo Java, ed il programmatore che intenda utilizzarlo per lo sviluppo o che abbia in progetto di migrare verso tale tecnologia, può essere tranquillo delle  sue reali caratteristiche  multipiattaforma.
E’ per questo motivo alla conferenza molto si è sentito parlare del progetto 100% Pure Java Program, (serie di regole per  la realizzazione di codice veramente portabile), ed è per lo stesso motivo  che Sun ha proposto il cosiddetto JavaActivator (un componente ActiveX installabile nel browser, ed in grado di caricare una qualsiasi JVM e di eseguire  applicazioni Java compatibili con quella versione della JVM).
Quest’ultimo, anche se non una novità,  lo si è potuto vedere in azione con delle interessanti dimostrazioni, e credo che diverrà molto un importante in un prossimo futuro: si immagini infatti una situazione in cui una applicazione che debba  per forza di cose utilizzare una certa libreria non disponibile su tutti i browser (ad esempio se si prevede che una parte degli utenti non abbiamo l’ultima versione di Netscape o di IExplorer): tale situazione fino ad oggi imponeva, chi avesse voluto proporre il proprio software al maggior numero di persone, di utilizzare il subset minimo di  librerie interpretabile da ogni browser, adesso è semplicemente risolvibile utilizzando tale componente.
Inoltre credo che Activator possa rappresentare un ottimo modo per risolvere prontamente  eventuali problemi derivanti da future versioni differenti ed incompatibili fra loro di Java (vedi il recente caso del Java versione  Microsoft).


Nuova presentazione di JDK
Fra tutte le novità presentate vi era un assente piuttosto importante, il JDK 1.2, per il quale sembra che si debba attendere ancora fino alla fine dell’anno. Anche se in realtà tale assenza deve essere commentata piuttosto dettagliatamente.
Innanzi tutto si deve dire che buona parte del software che compone questa nuova versione è già disponibile come parte a se stante  o come componente della versione beta, ma in ogni caso (quasi) perfettamente funzionante.
Inoltre nei giorni immediatamente precedenti la  conferenza è stata rilasciata la versione 1.2 in beta 3, versione che, pur non definitiva, può essere considerata sostanzialmente una prova generale della finale, e dalle prove fatte da noi della redazione  risulta essere piuttosto stabile.
Per questi motivi  credo che il ritardo accumulato sia in parte perdonabile, nonostante un certo imbarazzo fosse presente fa gli uomini di Sun.
Semmai è importante soffermare l’attenzione sull’atteggiamento della casa che, per quanto riguarda la modalità di presentazione dei nuovi prodotti, è molto cambiato rispetto al passato: l’esperienza infatti della versione 1.1, quando il pubblico degli sviluppatori è stato letteralmente sommerso dalle novità, deve aver insegnato qualcosa. 
Allora non fu facile per nessuno stare al passo con le novità proposte, e solo dopo un periodo più o meno lungo di studio intenso, si poté avere pieno possesso di tutte le nuove feautures.
Questa volta invece le nuove caratteristiche del linguaggio sono state annunciate per tempo, e rilasciate un po’ più dilazionate in modo da permetterne una più facile assimilazione.
In parte questo atteggiamento è dovuto a cause di forza maggiore (il ritardo non era certo voluto), in parte forse ad una precisa  scelta operativa.
 

Intervista
Al termine dei  4 giorni  di conferenza ho avuto modo di scambiare quattro parole con Miko Mastumura, chief evangelist di Java (l’evangelist è una persona incaricata di promuovere presso il pubblico un prodotto nuovo,  e di rappresentare l’interfaccia per il publico), al quale ho rivolto alcune domande (l’intervista completa verrà pubblicata prossimamente sulla rivista Computer Programming).
Il quadro che mi sono fatto, è piuttosto interessante, e conferma quello che  mi ero immaginato nelle giornate precedenti: ho cercato di spaziare sugli argomenti caldi del momento, da  Activator, alle nuove api rilasciate, e sopratutto sul futuro di Java.
Ebbene la politica attuale di Sun, come riportato all’inizio dell’articolo, è volta al completamento della piattaforma Java, alla standardizzazione, alla creazione di una tecnologia aperta. 
Allo stato attuale, il lavoro fatto è davvero tanto, e i progettisti sembrano essere veramente soddisfatti di quello che sono riusciti ad ottenere. Sembra infatti che siano riusciti a colmare quelle che loro stessi consideravano importanti lacune, e quindi non sono previsti ulteriori passi avanti sconvolgenti, ma piuttosto il consolidamento di quello che attualmente è disponibile.
Su mia precisa domanda,  Miko ha detto che Sun non è minimamente preoccupata della nascita di possibili confusioni nel pubblico derivanti dall’adozione di una tecnologia estranea a Java (ed in un certo senso antagonista, almeno dal punto di vista del marketing) come ActiveX in Activator:  da sempre infatti il progetto Java è stato  portato avanti utilizzando ogni tipo di tecnologia disponibile, e non è la prima volta che viene adottata tecnologia Micorsoft.
A tal proposito nelle giornate della conferenza,  Miko e gli altri relatori,  hanno  insistito molto sul fatto che uno dei punti di forza è l’adozione di tecnologia standard e del tutto aperta verso l’esterno (il sempre crescente interesse per CORBA non è un caso).
Ultima nota dolente: non sembra che ci sia molto da aspettarsi, almeno per  il momento, in merito al problema la decompilazione  e delle prestazioni. In questo settore però interessanti novità si prospettano all’orizzonte, come ottimizzazioni e riorganizzazioni dei parametri operativi  dinamicamente in run-time, o le virtual machine a pipeline per una computazione sequenziale più performante. Inoltre, secondo le affermazioni di Miko sembra che molto si stia lavorando per ottimizzare le prestazioni del Garbage Collector, adesso vero tallone di Achille per le prestazioni di una applicazione Java.
 

Conclusione
Al termine della  quattro giorni si possono tirare le somme, per capire cosa ci sia di nuovo da attendersi da Java, e sopratutto quale sarà il futuro sviluppo di tale settore dell’informatica:  sicuramente il JDK 1.1, che inizia ad essere finalmente stabile, rappresenta una ottimo punto di partenza.
Anche se ancora non è possibile averne una versione definitiva la versione 1.2 rappresenta lo sforzo definitivo di Sun di colmare le carenze della versione precedente: per la fine dell’anno credo che potremmo iniziare ad contare finalmente su un prodotto completo, robusto, stabile.
Le nuove proposte viste alla conferenza, sopratutto i  device embedded, diverrano sempre più una realtà, permettendo a Java di entrare nella vita di tutti i  giorni senza grossi sconvolgimenti.  Questo credo che sia l’unico modo per decretare effettivamente il successo o meno di una tecnologia, e di testarne l’effettiva utilità.
Non resta che attendere i prossimi mesi per vedere se effettivamente quello visto a J1 possa divenire realtà o solamente promesse difficilmente traducibili in applicazioni pratiche.

  

Giovanni Puliti
  P.S.  Ovviamente la legge di Murphi è sempre in agguato, anche quando decidi di andare dall'altra parte del mondo......
E' per questo motivo forse che la mia macchina fotografica ha deciso di rovinare definitivamente la pellicola con la quale avevo scattato le foto alla conferenza..... Ho cercato di rimediare prendendo  quelle messe a disposizione per la stampa dall'organizzazione stessa, ma ovviamente non è la stessa cosa.....
Se a qualcuno venisse il dubbio che in realtà non ero la, ma che sia tutta una montatura, beh posso sempre inviare una copia del tesserino di riconoscimento per accedere alle conferenze  :)))  
 

MokaByte rivista web su Java

MokaByte ricerca nuovi collaboratori
Chi volesse mettersi in contatto con noi può farlo scrivendo a mokainfo@mokabyte.it