Java Virtual Machine (JVM) macchina virtuale

Quando ci si avvicina al mondo Java per avviare un percorso di studio su questo linguaggio è opportuno partire dalla Java virtual machine (JVM); ciò non è dovuto alla OOP “object oriented programming” sul quale Java è impiantato ma piuttosto alla portabilità che lo contraddistingue da altri linguaggi. JVM sta per (Java Virtual Machine); è il componente che serve a far funzionare il software scritto in linguaggio Java e non solo, di proprietà della Oracle.

La Java Virtual Machine

La macchina virtuale Java simula il processore per l’ elaborazione delle applicazioni sia per il lato client che server. Interpreta il byte code generato dal compilatore Javac eseguendone le istruzioni. Quest’ultimo di fatto restituisce una semi compilazione grazie al JIT (Just in time) e non una vera compilazione come avviene in altri linguaggi alla C o C++.

jvm
Tecnologia Java

Java Runtime Environment (JRE)

JRE sta per (Java Runtime Environment) In pratica è il cuore di tutto il sistema Java; raggruppa in un solo insieme le librerie standard del linguaggio dette anche (API Java) il launcher per le applicazioni scritte in Java per la JVM.

Java Development Kit (JDK)

il JDK (Java Development Kit) contiene gli strumenti necessari di sviluppo e di controllo per le applicazioni create in codice Java. Inclusi nella JDK ricordiamo alcuni componenti come il Debugger per il riscontro degli errori, un Applet Viewer per mostrare in anteprima le Applet, il Javadoc che genera in automatico la documentazione in ipertesto del codice partendo dai commenti; il JAR (java archive) è un formato di compressione per il codice Java di librerie correlate; inizialmente questo formato nasce per trasferire i file in rete.

Java virtual machine: schema
Java virtual machine: immagine schema.

Aiuto per i programmatori Java

In altri linguaggi l’ SDK (Software Development Kit) che contiene al suo interno tutti gli strumenti utili per lo sviluppo; in Java altro non è che il JDK (Java Development Kit). Ha tutto quello che serve per programmare al meglio come;

  • le Application server (struttura),
  • driver di connessione a Database come MySQL,
  • Debug per riscontrare errori di compilazione,
  • documentazione di supporto;

Un ulteriore aiuto consiste nell’integrare l’ SDK con un IDE (Integrated Development Environment); esempi come Eclipse e Netbeans rendono bene l’ idea. Infine ricordiamo che il JDK oltre a quello di Oracle ed IBM ve ne sono altri anche di tipo Open Source; ad esempio Open JDK.