La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Introduzione a JAVA Lezione 1 Programmazione per la Musica | Prof. Luca A. Ludovico.

Presentazioni simili


Presentazione sul tema: "Introduzione a JAVA Lezione 1 Programmazione per la Musica | Prof. Luca A. Ludovico."— Transcript della presentazione:

1 Introduzione a JAVA Lezione 1 Programmazione per la Musica | Prof. Luca A. Ludovico

2 Perché Java? E’ un linguaggio di programmazione moderno e ampiamente utilizzato E’ portabile e indipendente dalla piattaforma «write once, run everywhere» E’ interamente ad oggetti (OOP, Object-Oriented Programming) –La sintassi di base (strutture di controllo, operatori, …) è pressoché identica a quella del C++ Contiene il package javax.sound.* Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

3 Bytecode e indipendenza dalla piattaforma Il bytecode è un linguaggio intermedio tra il linguaggio macchina e il linguaggio di programmazione, che riduce la dipendenza dall'hardware e facilita la creazione degli interpreti del linguaggio stesso In Java il bytecode viene prodotto dalla compilazione di codici sorgenti (o file sorgenti) scritti in linguaggio Java Principio di funzionamento: Codice sorgente compilazione bytecode virtual machine esecuzione Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

4 Bytecode e indipendenza dalla piattaforma Un programma in bytecode è eseguito mediante un secondo programma che ne interpreta le istruzioni. Questo interprete è spesso indicato con l’espressione macchina virtuale. Questa astrazione consente di scrivere programmi portabili: progettati e implementati in modo tale da poter essere eseguiti su diversi tipi di sistemi operativi e di architetture hardware. E’ possibile produrre bytecode Java partendo da altri linguaggi come Scala, Clojure o Groovy. Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

5 Vantaggi sui linguaggi interpretati L’indipendenza dalla piattaforma caratterizza anche i linguaggi interpretati Però un interprete di bytecode risulta molto più veloce di un interprete di un linguaggio di programmazione ad alto livello: –è un linguaggio con poche e semplici istruzioni –è più vicino al modo di funzionamento dell'hardware (processore e memoria) del computer Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

6 Esempi Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA Codice sorgente Compilazione Interpretazione e compilazione JIT Esecuzione

7 Java Virtual Machine La macchina virtuale Java, detta anche Java Virtual Machine o JVM, è il componente della piattaforma Java che esegue i programmi tradotti in bytecode dopo una prima compilazione. Attualmente incorpora un compilatore JIT che produce codice macchina Esistono implementazioni software per tutti i sistemi operativi moderni e implementazioni speciali per particolari ambienti hardware/software come telefoni cellulari ed elettrodomestici Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

8 JAVA Primi esempi di programmi Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

9 Competenze 1.Scrittura di un programma basilare 2.Gestione degli argomenti di main 3.Compilazione e avvio del software Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

10 Compilare ed eseguire il codice 1.Scrittura del codice sorgente Si tratta di un file di testo semplice, quindi è possibile utilizzare qualsiasi editor (Notepad++, Eclispe, Netbeans, ecc.). Convenzionalmente, si salva il file con estensione.java 2.Compilazione (produzione del bytecode) Richiede l’installazione del Java SE Development Kit (JDK) Da console va invocato il comando javac.exe nomefile.java Gli editor JAVA di solito occultano questa operazione Al termine, viene prodotto il file nomefile.class 3.Avvio del software Richiede l’installazione del Java Runtime Environment (JRE) Da console va invocato il comando java.exe nomefile.class Gli editor JAVA di solito occultano questa operazione Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

11 Un primo programma in Java Un programma minimale in Java deve obbligatoriamente contenere: –la definizione di classe tramite la parola chiave class seguita da nomeClasse –il metodo main o metodo principale, che costituisce l’entry point del programma Nel metodo main vengono definite variabili globali, istanziati oggetti e richiamati metodi statici su variabili e/o metodi dinamici sugli oggetti –Per la spiegazione degli oggetti e dei metodi dinamici si rimanda al prosieguo del corso Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

12 Hello World Sorgente di un programma minimale che stampa il testo "Hello world" sulla console. opzionale public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World"); } Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA Stesso nome del file.java? Non necessariamente, però il file.class compilato prenderà questo nome

13 Gli argomenti di main Molti elementi sintattici introdotti nell’esempio precedente non sono comprensibili allo stato attuale della trattazione Ad esempio, la funzione main prende in ingresso un numero variabile di argomenti, che è possibile passare al lancio del programma come stringhe di testo separate da spazi (gli spazi delimitano gli argomenti) Tecnicamente, String[] args indica un array di elementi di classe String chiamato args e dimensionato quando viene lanciato il programma Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA

14 Gli argomenti di main public class HelloWorldArg { public static void main(String[] args){ if (args.length == 0) System.out.println("Pochi arg"); else if (args.length > 1) System.out.println("Troppi arg"); else System.out.println(args[0]); } Programmazione per la Musica - Prof. Luca A. Ludovico 1. Introduzione a JAVA


Scaricare ppt "Introduzione a JAVA Lezione 1 Programmazione per la Musica | Prof. Luca A. Ludovico."

Presentazioni simili


Annunci Google