Il JDK (Java Development Kit) è un kit di sviluppo software utilizzato per creare applicazioni e applet in Java. È fornito da Oracle Corporation e include tutto il necessario per scrivere, compilare, eseguire e fare il debug di programmi Java.
COMPONENTI DEL JDK
Il JDK è composto dai seguenti elementi principali:
JRE (Java Runtime Environment):
Consente di eseguire programmi Java, ma non include strumenti per lo sviluppo. Comprende la JVM (Java Virtual Machine) e le librerie di base.
JVM (Java Virtual Machine):
E’ responsabile dell’esecuzione dei programmi Java, traducendo il Bytecode in istruzioni comprensibili dalla macchina su cui il programma è eseguito. (gestisce la memoria)
Compilatore Java (javac):
Il compilatore Java traduce il codice sorgente (.java) in Bytecode (.class), che può essere eseguito dalla JVM.
Strumenti di sviluppo:
Include debugger (jdb), profiler, strumenti per la gestione dei pacchetti (jar) e altre utility.
COME INSTALLARE IL JDK
- Scarica il JDK dal sito ufficiale di Oracle o OpenJDK.
- Installa il JDK seguendo le istruzioni per il tuo sistema operativo.
- Configura la variabile d’ambiente
JAVA_HOMEe aggiungi il percorso del JDK alPATH. - Verifica l’installazione con i comandi:
java -versionjavac -versionWRITE ONCE, RUN EVERYWHERE (WORA)
Grazie alla JVM (Java Virtual Machine), il codice Java può essere eseguito su qualsiasi dispositivo che abbia una JVM compatibile, senza bisogno di essere riscritto o ricompilato.
- Il codice Java viene scritto e compilato in Bytecode (.class).
- Il bytecode non è dipendente dal sistema operativo o dall’hardware.
- La JVM interpreta ed esegue il bytecode su qualsiasi dispositivo compatibile con Java.
1️ Codice sorgente Java (.java)
⬇ [Compilazione con javac]
2️ Bytecode Java (.class)
⬇ [Interpretazione/Esecuzione con JVM]
3️ Codice Macchina (Machine Code) [adatto all'hardware specifico]Il bytecode è un tipo di codice compilato e intermedio tra il codice sorgente (scritto in un linguaggio di alto livello come Java o Python) e il codice macchina eseguito direttamente dalla CPU. È progettato per essere eseguito da una macchina virtuale (come la JVM per Java o la Python Virtual Machine).