Vai al contenuto

[Java] Dubbio


Bio85

Messaggi raccomandati

Premetto che non sono un esperto di programmazione, ho imparato da soli 3 mesi i fondamenti del C all'universita.

L'anno prox farò Java, pero mi viene spontanea una domanda:

tra i vantaggi di sviluppare applicativi in Java, c'e sicuramente la portabilita su sistemi diversi. Pero i programmi per funzionare hanno bisogno della JVM (Java Virtual Machine). Quindi alla fine il Java non e' un vero e proprio linguaggio compilato, ha sempre bisogno di "qualcosa" che stia a meta strada tra la cpu e l'os. Ed inoltre il codice prodotto in Java e' migliore (in termini di velocita d'esecuzione) o no del codice prodotto con il C?

Attendo chiarimenti

Grazie ;)

"Software is like sex, it's better when it's free"

Linus Torvalds

Link al commento
Condividi su altri siti

Il java gira velocemente solo sulle macchine native, ovvero solo sui computer prodotti da Sun con il loro sistema operativo. Per farlo andare sugli altri sistemi occorre, come dici tu, la JVM, una sorta di emulatore e questo rallenta l'esecuzione del java. Quindi sì, un codice C compilato gira meglio di uno java.

Ti ricordo infine che apportando poche modifiche al tuo codice java in XCode puoi costruire il ponte java-cocoa che rende molto più scattanti in MacOS X le applicazioni basate su java. Ovviamente questa applicazione java-cocoa andrà solo su OSX.

ciao :ciao:

:aereo:

Link al commento
Condividi su altri siti

  • 2 settimane dopo...
Originally posted by Fabionetwork

Il java gira velocemente solo sulle macchine native, ovvero solo sui computer prodotti da Sun con il loro sistema operativo. Per farlo andare sugli altri sistemi occorre, come dici tu, la JVM, una sorta di emulatore e questo rallenta l'esecuzione del java. Quindi sì, un codice C compilato gira meglio di uno java.

Ti ricordo infine che apportando poche modifiche al tuo codice java in XCode puoi costruire il ponte java-cocoa che rende molto più scattanti in MacOS X le applicazioni basate su java. Ovviamente questa applicazione java-cocoa andrà solo su OSX.

ciao  :cry:

non credo sia esatto quello che dici.......

Guarda che dovrebbe velocizzare la runtime tato che il codice in java il cosidetto sorgente *.java viene prima coplilato in unicode.....i cosidetti *.CLASS o *.JAR(cioè sono delle vie di mezzo della compilazione, questa viene detta compilazione a piu livelli) e solo poi viene convertito in linguaggio macchina.....quando compili il .Class che dovrebbe essere di solito quello che trovi in rete o da qualsiasi altra parte almeno che il sorgente non sia libero è molto più veloce da complilarsi perchè se si può dire per metà è stato precompilato.....quando ti compili il c il tuo compute lo compila tutto in una volta....e poi il compilatore C(qui andiamo sullo specifico) compila in blocchi e non il linee come fa il java....cerca di vedere C++

<---stato confusionale--->

www.biscaribikers.tk

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...