Velocità di Java rispetto a JS / HTML / CSS per applicazioni web

3

Sto creando un'applicazione web. Ho usato principalmente Javascript in particolare jQuery. A causa di alcune funzionalità molto specifiche, mi imbatto in limitazioni pratiche di Javascript - non sono limiti limitati ma cose che troverei semplici in Java, come fare un editor di equazioni in cui è possibile modificare direttamente anziché entrare in TeX, è difficile in JS anche usando MathJax come base.

Dovrò creare funzionalità ancora più complesse che coinvolgono i motori 3D e fisici.

Per un'applicazione di grandi dimensioni come questa, in particolare quella che coinvolge motori 3D e fisici, Java sarebbe più lento o più veloce di Javascript quando viene eseguito all'interno di un browser? (Supponiamo che il codice sia scritto bene in entrambi i casi.) O è completamente incerto - cioè. dipende da troppe variabili specifiche?

Grazie.

    
posta Deets McGeets 12.10.2011 - 23:53
fonte

3 risposte

1

In genere, Java offre prestazioni considerevolmente migliori di Javascript: il compilatore JIT per Java è estremamente buono e consente di ottenere prestazioni quasi native nella maggior parte dei casi.

Penso che se si vuole costruire un motore 3D anche se si consiglia di andare con Java - in definitiva vorrai le capacità OpenGL complete e le prestazioni del compilatore JIT di Java.

Si noti che Java è un po '"pesante" da avviare rispetto a Javascript (sovraccarico del caricamento dei file .jar e del riscaldamento della JVM, ecc.). Inoltre ci sono alcuni controlli di sicurezza che potresti dover risolvere, specialmente se fai qualcosa che richiede le librerie native. In genere ciò significa firmare i file .jar e / o fare in modo che l'utente accetti di avere fiducia nella propria applicazione. In alternativa, potresti decidere che è meglio offrire un'applicazione Java scaricabile.

Personalmente ho avuto esperienze positive con LWJGL come toolkit per la creazione di applicazioni per browser 3D utilizzando Java. Puoi anche consultare jMonkeyEngine se desideri un motore 3D più completo con fisica ecc.

    
risposta data 13.10.2011 - 07:06
fonte
0

Supponendo che si intenda lato client java in modo che l'hardware e il comportamento della rete siano gli stessi, dipende dal browser. Il motore JavaScript di Internet Explorer è un paio di ordini di grandezza più lento di Chrome, ad esempio. Java o altri plugin come il flash dovrebbero essere abbastanza costanti su tutto il browser nello stesso hardware.

    
risposta data 13.10.2011 - 00:12
fonte
0

Dipende da molte variabili, dirò che la VM Java è più coerente. Puoi anche guardare Silverlight, Flash / Flex e qualcos'altro che probabilmente mi manca: -).

    
risposta data 13.10.2011 - 00:12
fonte

Leggi altre domande sui tag