>> Elettronica Tecnologia >  >> Casa intelligente >> Vita intelligente

Vantaggi e svantaggi di Java Virtual Machine Interpreter

Prima che esistessero Adobe Flash e altre moderne tecnologie Web, i proprietari dei siti utilizzavano Java per creare siti Web interessanti e interattivi. Come Flash, un programma Java riproduce film, genera grafica di alta qualità e supporta applicazioni complesse che assomigliano alle app desktop. Java Virtual Machine Interpreter che funziona dietro le quinte ti consente di godere di questi vantaggi, ma presenta notevoli svantaggi.

Anatomia di una macchina virtuale Java

Il termine Java ha diversi significati; può fare riferimento al linguaggio di programmazione utilizzato dagli sviluppatori per creare applicazioni, alla specifica dell'interfaccia del programmatore di applicazioni o alla specifica della Java Virtual Machine. Quando visiti una pagina Web che ha un programma Java, chiamato anche applet, il tuo browser attiva la Java Virtual Machine che interpreta il codice Java ed esegue l'applet. Come una vera macchina informatica, la JVM elabora le istruzioni e gestisce le aree di memoria.

Vantaggio:Java viene eseguito in un'area protetta

Immagina cosa potrebbe succedere se una pagina Web avesse la capacità di eliminare i tuoi file o esaminare i tuoi documenti privati. Anche se le applet Java possono eseguire attività utili che il normale codice HTML non può, Java viene eseguito isolato all'interno della Java Virtual Machine. La JVM garantisce che un'applet rinnegata da un sito pericoloso non possa accedere a risorse di sistema come dischi rigidi.

Svantaggio:i criminali informatici possono sfruttare la Java Virtual Machine

Sebbene la JVM limiti le azioni di un'applet, è comunque possibile che gli aggressori sfruttino i punti deboli della piattaforma Java. Ad esempio, all'inizio del 2013, Microsoft ha visto tre esempi di applet progettati per utilizzare l'esecuzione di codice in modalità remota per infettare i computer. Oracle, lo sviluppatore di Java, ha rilasciato un aggiornamento che ti mantiene più sicuro impostando i livelli di sicurezza predefiniti dell'applet su "Alto". Questa impostazione garantisce che il tuo browser ti avverta quando un'applet non firmata tenta di essere eseguita. Come osserva Microsoft, "la stragrande maggioranza delle applet che sfruttano le vulnerabilità della sicurezza non sono firmate". Una firma digitale su un'applet ti consente di sapere chi l'ha creata e di verificare che nessuno abbia modificato l'applet dopo che il creatore l'ha firmata.

Vantaggio:taglia unica

"Piattaforma" si riferisce alla capacità di un programma di funzionare correttamente su diversi tipi di hardware. Poiché Java è multipiattaforma, gli sviluppatori possono scrivere un pezzo di codice che viene eseguito su qualsiasi PC, Mac, telefono cellulare e qualsiasi altro dispositivo dotato di una JVM. Java non deve sempre essere eseguito in un browser. Puoi scaricare app Java che funzionano sul desktop come fanno i normali programmi.

Svantaggio:potrebbe essere necessaria una certa assemblea

Se nessuno ha mai installato Java Runtime Environment sul tuo computer, non puoi usare Java. Visita la pagina Web Verifica versione Java e segui le istruzioni per scaricare e installare l'ultima versione se non la disponi. Although it's not a lengthy installation, some problems could occur, so consult the Java troubleshooting page if you need assistance getting your installation to work.

Additional Advantages

At a detailed level, Java Virtual Machines uses its just-in-time compiler to convert Java code into low-level machine language that runs as quickly as regular applications. Since browsers can cache this compiled code, they can reuse it later without downloading it again and going through the compilation steps.


  1. Vantaggi e svantaggi di un mouse ottico
  2. Come abilitare Java Virtual Machine
  3. Vantaggi e svantaggi dei cavi di rete
  4. Vantaggi e svantaggi dell'utilizzo di un MFP
  5. Vantaggi e svantaggi delle macchine virtuali Java
  6. I vantaggi e gli svantaggi del metodo di sovraccarico in Java