La tecnologia Java Dott. Ing. M. Banci, PhD JAVA La tecnologia Java consiste in un linguaggio di programmazione e in una piattaforma 2 Il linguaggio di programmazione Java È un linguaggio ada lto livello che può essere caratterizzato dai seguenti punti: – – – – – – – – – Semplice Indipendente dall’architettura Object oriented Portabile Distribuito High performance Multithreaded Robusto Dinamico The Java Language Environment , a white paper written by James Gosling and Henry McGilton. 3 Uno sguardo al processo di sviluppo di un programma In Java i sorgenti sono scritti in formato testo contenuto in file con estensione .java. ) Questi file saranno compilati in altri file .class usando un compilatore (javac). ) Un file .class non contiene codice nativo per un particlare processore; esso contiene bytecodes — il codice macchina della Java Virtual Machine (Java VM, JVM). ) Successivamente si usera un launcher tool (java) per eseguire l’applicazione con una istanza della Java Virtual Machine. ) 4 Tramite la JVM, la stessa applicazione è in grado di essere eseguita su piattaforme diverse. ) La JVM è disponibile per in molti sistemi operativi diversi, il medesimo file .class può essere eseguito su Microsoft Windows, Solaris OS, Linux, o Mac OS. 5 La piattaforma Java ) ) ) ) Col termine PIATTAFORMA si intende l’hardware o l’ambiente software nel quale un programma si esegue (Win, mac, Linux, Solaris). La maggiorparte delle piattaforme può essere descritta come una combinazione fra OS e HW. La piattaforma Java differisce dalla maggiorparte delle altre piattaforme, infatti essa è esclusivamente una piattaforma SW che gira sopra altre piattaforma HW. La piattaforma Java ha 2 componenti: – La Java Virtual Machine – La Java Application Programming Interface (API) ) La JVM è la base della piattaforma Java ed è stata “portata” su varie piattaforme HW. La API è un insieme di componenti SW già pronti che forniscono molte utili funzionalità. Sono raggruppati in librerie di classi e interfacce; le librerie sono indicate come packages. 6 La API e la JVM isolano il programma dalla struttura HW sottostante. Poichè è un ambiente indipendente dalla piattaforma, la piattaforma Java può risultare più lenta rispetto rispetto al codice nativo. 7