Java 6 germoglia su Mac OS X

Un progetto open source avviato diversi mesi fa è ormai ad un passo dal suo obiettivo. Nel frattempo, c'è chi propone una curiosa petizione

Roma - Presto Mac OS X potrebbe diventare una piattaforma di sviluppo più congeniale ai programmatori Java. Un progetto open source ha infatti rilasciato una versione quasi completa del primo port di Java Development Kit 6 (JDK6) per Mac OS X Tiger e Leopard.

Questa implementazione, basata su quella BSD, fornisce ai programmatori la possibilità di creare applicazioni per Java 6 direttamente sulla piattaforma di Apple, senza più ricorrere ad un secondo sistema operativo come Linux o Windows. Ciò colma, seppure con qualche limite, una lacuna che ormai da qualche tempo è fonte di grande disappunto fra gli utenti di Mac OS X che sviluppano in Java.

Va però detto che la licenza che accompagna il codice del toolkit, la Java Research (JRL), pone diverse restrizioni nell'uso e nella ridistribuzione delle applicazioni. Per superare questo ostacolo, Landon Fuller, principale fautore del port di Java 6 per Mac OS X, intende unire il codice di quest'ultimo con quello per FreeBSD e proporre il progetto risultante come port ufficiale di OpenJDK, il progetto avviato lo scorso anno da Sun per la creazione di un JDK completamente open source. Se Fuller riuscirà nel proprio intento, gli sviluppatori di Mac OS X potranno beneficiare della maggiore libertà concessa loro dalla licenza GPL2 di OpenJDK.
L'attuale port di Java 6 per Mac OS X soffre anche di un limite tecnico piuttosto importante, ossia l'assenza del supporto all'interfaccia grafica Aqua: per il momento è possibile creare solo interfacce per l'ambiente X11. Fuller ha ammesso che il port di Swing per Aqua richiederà molto lavoro, e difficilmente potrà essere completato in tempi brevi.

Ad oggi, Apple non ha mai discusso i propri piani circa l'eventuale supporto a Java 6. Per richiamare l'attenzione della Mela sulla questione, uno sviluppatore ha di recente promosso una sorta di petizione - Vote for Java6 on Leopard! - che prevede l'inserimento, da parte di chi desidera aderire all'iniziativa, della stringa "13949712720901ForOSX" sul proprio blog. Lo sviluppatore spera che più blog parleranno della cosa, più i manager Apple saranno spronati ad investire risorse su Java e a mettere al corrente la comunità dei loro piani.

Codice e binari dell'anteprima del JDK6 per Mac OS X, chiamata in codice SoyLatte, possono essere scaricati da qui.
45 Commenti alla Notizia Java 6 germoglia su Mac OS X
Ordina
  • La Apple la vedo un pò opportunista, fa solo ciò che davvero le conviene però dovrebbe capire che supportando nativamente Java6 guadagnerebbe nuovi utenti e nuovi programmi sviluppati da terze parti...

    Io ho aderito all'iniziativa trattata nell'articolo sul mio blog:

    http://www.ideafactory.it

    Consiglio a tutti di farlo...
    non+autenticato
  • provate a far partire i giochini giava su un browser...
  • - Scritto da: lellykelly
    > provate a far partire i giochini giava su un
    > browser...

    hai fatto dei test su quache giochino in particolare?
    non+autenticato
  • - Scritto da: lellykelly
    > provate a far partire i giochini giava su un
    > browser...

    In realtà il problema vero di Java è l'interfaccia grafica.
    Le Swing sono di una lentezza spaventosa...
    Infatti Eclipse usa le proprie librerie grafiche e va che è una meravigliaSorride
    Uby
    893
  • > > provate a far partire i giochini giava su un
    > > browser...
    >
    > In realtà il problema vero di Java è
    > l'interfaccia
    > grafica.
    il vero problema è javaA bocca aperta
    non+autenticato
  • prima di dire che java è lento, bisognerebbe specificare rispetto a cosa. Sicuramente è più lento di un codice scritto in C/C++ o in assembler, pero avete mai provato a pensare che se la maggior parte dei server che fanno transazioni bancarie sono dei J2EE (o adesso JEE) application server, vuol dire che qualche qualità questo linguaggio ce l'ha?
    Mai sentito parlare di portabilità, scalabilità, sicurezza, multithreading nativo ...
    Spesso le persone parlano solo per sentito dire...
  • > prima di dire che java è lento, bisognerebbe
    > specificare rispetto a cosa. Sicuramente è più
    > lento di un codice scritto in C/C++ o in
    > assembler
    QUOTO!
    non+autenticato
  • rispondo solo qui prchè è l' unico commento non trolleggiante.
    Java per sua natura ha un modello di funzionamento molto diverso da altri runtime; il codice viene ottimizzato durante il funzionamento e questo ha due effetti che lo rendono poco adatto alle applicazioni desktop:
    1) tende ad occupare molta memoria
    2) ci mette un po' a "scaldarsi" perchè deve appunto attivare le ottimizzazioni e questo richiede molte esecuzioni del codice, ma risulta una volta a regime spesso più veloce delle controparti compilate staticamente (per esempio c/c++) prprio perchè ottimizzato per le particolari condizioni in cui esegue.
    Da questo segue che il migliore campo di applicazione per Java sono appunto le applicazioni server, che girano su macchine con molta memoria e su processi che girano 24h/24 o quasi, permettendo al motore di andare pienamente a regime.
    In ogni caso nelgi utlimi anni (ed in particolare proprio con la versione 6) i miglioramenti lato desktop sono stati incredibili, tanto che, provando su una macchina vecchiotta le rispettive ultime versioni Netbeans (Ide scritto in Java puro) mi è risultato molto più veloce di Eclipse (che invece si appoggia a librerie native).
    Insomma "java is slow" è una cantilena vecchia che qualcuno ripete nella sua ignoranza solo per sentito dire.
  • - Scritto da: pentolino
    > rispondo solo qui prchè è l' unico commento non
    > trolleggiante.
    > Java per sua natura ha un modello di
    > funzionamento molto diverso da altri runtime; il
    > codice viene ottimizzato durante il funzionamento
    > e questo ha due effetti che lo rendono poco
    > adatto alle applicazioni
    > desktop:
    > 1) tende ad occupare molta memoria
    > 2) ci mette un po' a "scaldarsi" perchè deve
    > appunto attivare le ottimizzazioni e questo
    > richiede molte esecuzioni del codice, ma risulta
    > una volta a regime spesso più veloce delle
    > controparti compilate staticamente (per esempio
    > c/c++) prprio perchè ottimizzato per le
    > particolari condizioni in cui
    > esegue.
    > Da questo segue che il migliore campo di
    > applicazione per Java sono appunto le
    > applicazioni server, che girano su macchine con
    > molta memoria e su processi che girano 24h/24 o
    > quasi, permettendo al motore di andare pienamente
    > a
    > regime.

    Una cosa che mi sono sempre chiesto: perchè java non utilizza SEMPRE il jit compiler prima di eseguire una app?
    La velocità di esecuzione aumenterebbe veramente tanto, o sbaglio?
    Uby
    893
  • in realtà compila solo le porzioni che vengono eseguite molto spesso (e che quindi rappresentano il vero collo di bottiglia) ma su queste esegue un lavoro davvero certosino, applica ottimizzazioni davvero ad hoc, impossibili da fare se il codice fosse compilato staticamente prima dell' esecuzione.
  • > in realtà compila solo le porzioni che vengono
    > eseguite molto spesso (e che quindi rappresentano
    > il vero collo di bottiglia) ma su queste esegue
    > un lavoro davvero certosino, applica
    > ottimizzazioni davvero ad hoc, impossibili da
    > fare se il codice fosse compilato staticamente
    > prima dell'
    > esecuzione.
    Rotola dal ridereRotola dal ridereRotola dal ridere
    non+autenticato