Programmare in Java Olga Scotti
Linguaggi di programmazione linguaggio macchina assembler linguaggi ad alto livello
Linguaggi ad alto livello istruzioni comprensibili linguaggio simile a quello naturale incomprensibile a un computer portabile multithreading
Compilatore traduce le istruzioni ad alto livello in linguaggio macchina
Installazione del Java SDK Il Software Development Kit di Java è distribuito gratuitamente, lo potete scaricare da http://java.sun.com/j2se/1.4.2/download.html scegliendo il J2SE SDK per Windows (50MB circa).
Editor i file java sono file di testo blocco note NO Word! altri editor di testo (http://www.jcreator.com) L installazione è semplice, controllare che il compilatore venga cercato nel posto giusto (qualcosa come: C:\Programmi\j2sdk1.4.1_02\bin; )
Fasi di un programma analisi del problema scrittura compilazione caricamento delle applicazioni verifica esecuzione
Scrittura del programma per questa fase si utilizza un editor (per esempio il blocco note). Il file generato va poi salvato sul disco fisso. Un file che contiene un programma java viene solitamente salvato con l estensione.java (esempio primoprogramma.java)
Compilazione se sul PC è installato il Software Development Kit (SDK) java, attraverso il comando javac (esempio javac primoprogramma.java), il compilatore converte il codice java in bytecode, un linguaggio compreso dall interprete java. Se l operazione si conclude con successo viene creato un file che ha estensione.class (viene quindi creato primoprogramma.class). ATTENZIONE! Per compilare un programma aprire un prompt del dos e portarsi nella directory in cui è salvato il file con il sorgente.
Caricamento delle applicazioni Le applicazioni vengono caricate in memoria usando l interprete java utilizzando il comando java. Il comando java si applica a file.class di cui non è necessario specificare l estensione (esempio java primoprogramma)
Verifica non sempre i programmi funzionano al primo colpo, ciascuna delle fasi sopra puo fallire a causa di diversi tipi di errori. Per esempio potremmo aver scritto in maniera errata una parola chiave o un comando del linguaggio, oppure aver chiesto di effettuare un operazione illecita come la scrittura in una parte di disco che non ci compete o una divisione per zero.
Esecuzione Il computer (la CPU) interpreta un bytecode per volta eseguendo tutte le azioni previste dal programma.
Primo programma: stampa a video public class Stampa { } public static void main(string args[]) { System.out.println( Prima prova di stampa ); }
Note indentazione righe e spazi vuoti nome del file = nome classe convenzioni (nomi di classe con iniziale maiuscola, variabili in minuscolo)
Compilazione del programma aprire un prompt del dos entrare nella directory in cui è memorizzato il file.java digitare javac Nomefile.java se non ci sono errori è stato generato un file Nomefile.class nella stessa directory
Esecuzione del programma sempre dal prompt del dos digitare java Nomefile dovrebbe comparire a schermo l output
I commenti I commenti si inseriscono per documentare i programmi e aumentarne la leggibilità (anche per chi non li ha scritti e magari deve fare delle modifiche). Le linee di commento vengono ignorate dal compilatore e non provocano nessuna azione quando il programma è in esecuzione.
Due tipi di commento // tutto quello che sta dopo il doppio slash fino a fine riga /* tutto quello che sta tra le due coppie di simboli è un commento, anche se sta su più righe */
Aggiungiamo i commenti // semplice programma che stampa a video public class Stampa { public static void main(string args[]) { /* questa è la riga più importante del programma quella che effettivamente stampa la scritta a video */ System.out.println( Prima prova di stampa ); } }
Ricompilazione Ogni volta che modificate il codice sorgente dovete salvare e ricompilare (javac) per vedere i nuovi effetti rieseguite la nuova classe generata dalla compilazione
public class Stampa { Ogni programma Java ha almeno una definizione di classe. class è una parola chiave di Java, è scritta tutta in minuscolo come tutte le parole chiave, Stampa è il nome della classe e segue la convenzione di iniziare con una lettera maiuscola. I nomi delle classi possono iniziare con una lettera o con un _, non possono iniziare con un numero ma possono contenerne. Non possono essere usate le parole chiave per dare i nomi alle classi. ATTENZIONE! Java è case sensitive Stampa è diverso da stampa
{. } le parentesi graffe delimitano I blocchi di codice. Devono essere accoppiate e possono essere innestate.
public static void main(string args[]) main è il metodo (blocco di codice) più importante di una classe, quello da cui inizia l esecuzione del codice. Ogni metodo esegue delle operazioni e restituisce il prodotto dell attività. void si usa per quei metodi che non restituiscono nulla, il nostro metodo infatti stampa e basta
System.out.println( Prima prova di stampa ); la prima parte è un comando che comunica al computer di eseguire l istruzione di stampa. Tra le parentesi e racchiusi tra virgolette ci sono i caratteri che vogliamo far stampare a video: una stringa N.B. ogni istruzione è terminata da un ;
Stampa a video System.out.println( tralla trallalla ); System.out.print( bla bla bla ); \n provate System.out.println( Prima prova \ndi stampa ); provare con due print/println successive gli spazi