Per Java è tempo di giocare

La mamma di Java intende promuovere con più decisione l'uso del proprio linguaggio nel settore dei videogame varando una nuova divisione che avrà il compito di creare una piattaforma Java per sviluppare giochi mobile e desktop

Santa Clara (USA) - Sebbene nel recente passato Sun abbia più volte tentato di promuovere l'uso di Java fra gli sviluppatori di videogame, fino ad oggi questo linguaggio è stato quasi esclusivamente impiegato, nel settore videoludico - per creare giochi graficamente piuttosto semplici da far girare sui telefoni cellulari o sul Web.

Sun sembra ora decisa a cambiare questa situazione attraverso la creazione di una nuova divisione, chiamata Game Technologies Group (GTG), il cui compito sarà quello di sviluppare tecnologie basate su Java da impiegare nello sviluppo di videogiochi anche molto complessi, in grado di sfruttare a fondo non soltanto le caratteristiche della nuova generazione di dispositivi mobili, come smartphone e PDA, ma anche di computer e console.

Il primo obiettivo di Sun è quello di promuovere Java come linguaggio di programmazione ideale a scrivere giochi multipiattaforma in grado di supportare Internet.
Con la creazione del GTG, il cui annuncio ufficiale verrà dato in occasione della conferenza JavaONE, Sun prosegue su quella strada che, lo scorso anno, ha visto il rilascio delle prime specifiche Java Games Profile (JGP), un insieme di interfacce di programmazione basate su Java 2 pensate per lo sviluppo di giochi hi-end per i dispositivi da gioco e i computer desktop.

Il più grosso dubbio riguardante l'adozione di Java come linguaggio per sviluppare giochi rimane però il fattore prestazioni. Come può - si domandano in molti - un linguaggio basato su bytecode e che necessita di una macchina virtuale, garantire le prestazioni necessarie a creare videogiochi così complessi e voraci di "flops" come quelli odierni?

Chris Melissinos, uno degli sviluppatori di Sun che da anni è impegnato nel portare Java nel mondo videoludico, ha risposto dicendo che "negli ultimi anni Java è divenuto un linguaggio estremamente veloce e ottimizzato e perfettamente in grado di gestire grafica anche molto complessa".

Non resta che attendere le prove dei fatti.
TAG: sw
29 Commenti alla Notizia Per Java è tempo di giocare
Ordina
  • Dalle nostre prove pratiche Java è veloce quanto il C++. E' particolarmente vero se si sfruttano pesantemente modelli ad oggetti (tra l'altro tipici nei sistemi di simulazione e nei videogiochi). Il JIT traduce il byte code in codice macchina nativo e lo memorizza in RAM. Questo ne velocizza l'esecuzione ma ne penalizza l'occupazione di memoria (ma tanto la RAM costa poco).
    Invece sono veramente lente le classi Swing (interfaccia utente). Penso sia poprio questo il motivo che fa percepire Java come un sistema lento. A questo proposito si può provare Eclipse, un IDE open source non basato su Swing. Se la RAM è abbondante dopo un po' di minuti di esecuzione è indistinguibile da un sistema di sviluppo nativo.
    non+autenticato
  • Quanto affermato non e' convalidato da niente e nessuno.
    Come faccia un programma scritto con un linguaggio interpretato, o meglio precompilato, anche se ottimizzato con un compilatore JIT, ad avere le stesse performance di un linguaggio compilato... e' un mistero. A me non sembra affatto scientifico. Se invece si voleva dire che le differenze di velocita' sono trascurabili, beh, allora si dovrebbe dire in quale ambito, con quale tipo di applicazione, con quale macchina virtuale, su quale processore, fornire dei dati.

    Di fatto un programma Java e' piu' lento, e lo sara' sempre, di un programma scritto in un linguaggio compilato, a parita', si intende, di soluzioni algoritmiche. Affermare il contrario sarebbe come dire:

    if(1 < 0)
       cout << "Java e' piu' veloce di C++" << endl;
    else
       cout << "Ma che sto dicendo?!" << endl;

    Salutamelo
  • riguardo all'analisi fatta nell'universita' danese guardate almeno i grafici al link http://www.rolemaker.dk/articles/evaljava/Java%20E...

    sono interessanti in quanto dimostrano come l'informazione che passata sin'ora sia almeno parzialmente distorta nel senso che, per quanto evidenzi come alcune soluzioni siano piu' performanti di altre, mette anche in chiaro come l'ordine di grandezza sia comunque pressoche' quello

    chiunque abbia studiato un minimo di analisi dei tempi di calcolo del software sa bene che non e' importante se un algoritmo richiede un ciclo di cpu in piu' o in meno ma conta come crescono le richieste al crescere dell'input

    per chi e' meno del ramo faccio un esempio se io ho 2 meccanismi che per fare un calcolo impiegano un tempo x*x+1 e l'altro x*x+100 (dove x e' la "grandezza" del mio input), e' vero che per x piccoli il primo e' piu' performante, ma per x grandi si vede come la differenza non sia influente (se ho x=1000 diventano 1000001 e 1000100 ossia una differenza minore del 0,1%)

    se parliamo di una applicazione allora non si tratta di una esecuzione di una procedura con un solo input, ma generalmente di una grossa serie di esecuzioni con input "grossi"

    in altre parole, almeno per l'analisi di java in questo contesto, la differenza c'e' ma non conta
    non+autenticato
  • Direi che non significa nulla. Se intendi dire che valutando la complessita' di due algoritmi O(n^2), non hanno alcuna rilevanza i termini "+1" e "+100", ti rispondo, hai ragione, ma che ci azzecca Java e C++? Non si stanno confrontando soluzioni e design del software, ma soltanto l'efficienza, intesa come consumo delle risorse (CPU, memoria, banda etc.), di due software identici dal punto di vista di design e algoritmi, scritti pero' con linguaggi diversi.
  • Alcuni dati scaturiti da una lavoro inerente un dottorato di riceca pressao un'università in danimarca

    http://www.rolemaker.dk/articles/evaljava/

    ciao
  • Se non leggo male:

    Here we see that the fastest Java version is approximately 3 times slower than the
    fastest C++ version.
    ? Nothing is gained in this case by using a static compiler like Jet over a Hotspot VM.
    ? The IBM JVM is in this case no faster than the Sun Hotspot JVMs. This is a bit
    surprising since it generally has the reputation of being the overall fastest JVM
    available.
    ? It is the Java 1.4 client that is the fastest JVM. This is surprising since we would
    normally have expected the Sun server JVM to be the faster of the two.
    non+autenticato
  • Vi consiglio di visitare wirelessgaming.it, dove troverete anche alcuni speciali che parlano più approfonditamente del linguaggio J2ME e dei giochi che vi girano.
    non+autenticato

  • - Scritto da: Anonimo
    > Vi consiglio di visitare wirelessgaming.it,
    > dove troverete anche alcuni speciali che
    > parlano più approfonditamente del linguaggio
    > J2ME e dei giochi che vi girano.

    Naaa, non funziona bene, preferisco aspettare l'uscita di J2XPSorrideSorride rotfl che Trollata di classeSorride
    non+autenticato
  • IL2 Sturmovik e IL2 Forgotten Battles, due dei migliori simulatori di volo sulla seconda guerra mondiale (e prossimamente ci sarà anche un simulatore con aerei odierni) sono realizzati con tecnologia Java e OpenGL.
    E il simulatore è notevolmente più veloce e graficamente accattivante di tutti i concorrenti (Flight Simulatori, Fly 2, Combat Flight Sim, X-Plane) e come X-Plane utilizza veri modelli aerodinamici piuttosto che 4 parametri che definiscono come si comporta il tuo aereo.
    E cose come la definizione della struttura interna dell'areo su cui è montata la fusoliera (che si stacca a frammenti se ti colpiscono e si buca) e le sollecitazioni meccanico-fisiche dovute alle manovre acrobatiche (con tanto di suoi iperrealistci), nonché i piloti che si muovono nella cabina del loro aereo (e ti fanno pure i gestacci!) non sono cosa da tutti i simulatori...
    Eppure è Java e a differenza di molti concorrenti gira ottimamente anche sul mio Athlon 850...
    non+autenticato
CONTINUA A LEGGERE I COMMENTI
Successiva
(pagina 1/2 - 7 discussioni)