Visualizzazione dei risultati da 1 a 8 su 8

Discussione: java Tiger

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    682

    java Tiger

    Salve a tutti volevo chiedere alcune informazioni circa la nuova release di Jdk 1.5 in quanto ho visto che sul sito
    Sun si parla di nuove performance della JVM.
    Siccome é parecchio che mi dibatto per investire su un linguaggio multipiattaforma da usare per applicazioni Desktop
    mi chiedevo cosa ne pensate.
    Io per esempio ho qualche programma in Java come Zend Studio
    che ogni tanto si inchioda alla grande ^^
    Grazie e buon lavoro.

  2. #2
    o per esempio ho qualche programma in Java come Zend Studio
    che ogni tanto si inchioda alla grande ^^
    I programmi che si inchiodano si possono scrivere in qualsiasi linguaggio... ^___^
    Quelli in Java sono lievemente piu' affamati di risorse e questo li pregiudica un po'.

    Qui:

    http://java.sun.com/docs/hotspot/

    trovi le informazioni sulle novita introdotte in JDK5.0 per quanto riguarda la Virtual Machine ed HotSpot (il compilatore just-in-time, cioe' a tempo di esecuzione)

    Confesso di averci capito si' e no un quarto di mazza...
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    682
    Scusa l'ignoranza che cosa intende per compilatore just-in-time ?
    Se ho capito bene con queste opzioni in compilazione abilito
    o meno alcune caratteristiche e questo mi permente di usare
    solo quello che mi serve allegerendo il carico.
    Ho visto che Python e Qt(rilasciate anche per Windows) sono
    carine e Python é abbastanza veloce per lavorare.
    Sicuramente Java ha molti tool da terze parti e certe volte
    ti evita di invetarti la ruota inutilmente.
    Grazie per la risposta.

  4. #4
    Un compilatore just in time (quello di Java si chiama HotSpot) interviene a tempo di esecuzione.
    Il compilatore "standard" (javac) non crea eseguibili nativi, ma compila in un formato denominato bytecode che gira su un fantomatico "processore Java".
    La Java Virtual Machine puo' essere vista come un emulatore di Processore Java. Legge le istruzioni bytecode e le converte nel linguaggio macchina della piattaforma su cui gira.
    Ne consegue che eseguire un programma, in questo modo, risulta anche di un ordine di grandezza piu' lento dello stesso programma compilato come si conviene.
    Il compilatore JIT provvede a compilare il bytecode la prima volta che questo viene eseguito. Inoltre, potendo "osservare" l'esecuzione stessa del programma, puo' effettuare delle ottimizzazioni (esempio tipico: inlining di porzioni di codice) che un normale compilatore, se non viene indirizzato dall'utente con richieste esplicite, non potrebbe realizzare.
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    682
    Per quel pò che ne so il codice viene compilato la prima
    volta e poi interpretato ed eseguito per ogni esecuzione.
    Originariamente inviato da dekdek
    Un compilatore just in time (quello di Java si chiama HotSpot) interviene a tempo di esecuzione.
    Il compilatore "standard" (javac) non crea eseguibili nativi, ma compila in un formato denominato bytecode che gira su un fantomatico "processore Java".
    La Java Virtual Machine puo' essere vista come un emulatore di Processore Java. Legge le istruzioni bytecode e le converte nel linguaggio macchina della piattaforma su cui gira.
    Ne consegue che eseguire un programma, in questo modo, risulta anche di un ordine di grandezza piu' lento dello stesso programma compilato come si conviene.
    Il compilatore JIT provvede a compilare il bytecode la prima volta che questo viene eseguito. Inoltre, potendo "osservare" l'esecuzione stessa del programma, puo' effettuare delle ottimizzazioni (esempio tipico: inlining di porzioni di codice) che un normale compilatore, se non viene indirizzato dall'utente con richieste esplicite, non potrebbe realizzare.
    Se ho ben capito il compilatore JIT permette
    di fare un ulteriore analisi del bytecode seguendo
    le regole imposte dal programmatore
    in fase di compilazione e permettendo quindi maggiore
    flessibilità al bytecode risultante da questo processo.
    Spero di aver capito bene.

  6. #6
    Per quel pò che ne so il codice viene compilato la prima
    volta e poi interpretato ed eseguito per ogni esecuzione.
    Si, ma ìl "compilato" Java non e' eseguibile. Nel senso: non e' un eseguibile Win32, ne' Linux, ne' Solaris. Anche il Python mi pare funzioni cosi'. Al contrario, C crea eseguibili Win32 se compili per Win32, eseguibili Linux se compili per Linux, etc...

    Per quanto riguarda le ottimizzazioni, il JIT dovrebbe farle in base al codice stesso, e soprattutto in base al flusso dinamico del programma; cio' evitando che sia l'utente a dirgli come e/o cosa fare. Ovvio che non sempre funziona...
    Cmq, gia' la compilazione e' in se' una grande ottimizzazione...
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    682
    Che Java non crea eseguibili rientra tra le mie conoscenze
    ti ringrazio per aver comunque fatto le dovute precisazioni.
    Il fatto é che volevo fare un confronto senza scatenare
    una guerra di religione Python Vs Java per applicazioni Desktop citando situazioni reali. In cui i due linguaggi
    tra IDE e RAD danno il meglio per questo genere di applicazioni. Ecco perché ti chiedevo circa la velocità di esecuzione di Tiger.
    Grazie per le risposte.

  8. #8
    Ah, su questo non ti so dire.
    Da quello che ho visto io e da quello che si sente in giro, l'aumento di prestazioni e' piu' che altro potenziale.
    Addirittura, codice pesantemente ottimizzato per le vecchie versioni potrebbe girare peggio sulla nuova.
    Bisognera' attendere le successive release. Proprio in questi giorni e' uscita la Update2 che pero' piu' che altro corregge diversi bug introdotti nelle ultime versioni...
    Folle e' l'uomo che parla alla luna.
    Stolto chi non le presta ascolto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.