2 - Introduzione al linguaggio Java



Похожие документы
Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

Scrivere un programma in Java

Corso di Laurea Ingegneria Civile Fondamenti di Informatica. Traduzione ed esecuzione di programmi. Dispensa 08

Struttura di un programma Java

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Programmare in Java. Olga Scotti

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Appunti di Informatica 1

Strumenti per la programmazione

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

Eclipse - Nozioni Base

Getting Started. Walter Cazzola. Dipartimento di Informatica e Comunicazione Università degli Studi di Milano

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse

Le command line di Java

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

Introduzione alla programmazione Java. Dott. Ing. M. Banci, PhD

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti

Panoramica: che cosa è necessario

Codifica: dal diagramma a blocchi al linguaggio C++

Java: Compilatore e Interprete

15 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Primi programmi in Java. Lezione IV

14 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Corso sul linguaggio Java

Corso Eclipse. Prerequisiti. 1 Introduzione

Tale attività non è descritta in questa dispensa

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Approccio stratificato

Installazione del Software. per lo Sviluppo di Applicazioni Java

NOZIONI BASE PER ESERCITAZIONI

sito web sito Internet

Introduzione ad Eclipse

Fondamenti di programmazione in Java. Lezione III

Installazione del JDK 6

Corso di PHP. Prerequisiti. 1 - Introduzione

Il linguaggio di programmazione JAVA

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Software di base. Corso di Fondamenti di Informatica

Tutorial per l installazione del J2SE 6 e configurazione del sistema operativo

Introduzione a Dev-C++

Introduzione alla programmazione in Java

Modelli Computazionali per Sistemi Complessi

19. LA PROGRAMMAZIONE LATO SERVER

Dispensa di Informatica I.1

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011.

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014)

2015 PERIODO D IMPOSTA

Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso

Programmazione. Programmare ad oggetti. Programmi e calcolatori. Focalizzazione del corso. Alcuni linguaggi famosi. Programmi e linguaggi

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015

10 - Programmare con gli Array

Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it

ISTRUZIONI XCODE. Autore: Luca Florio (luca.florio<at>polimi.it)

Un primo programma Java. Introduzione alla programmazione in Java. Programmi e mondo reale. Programmare ad oggetti. I programmi come modelli

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Programmazione in Java Parte I: Fondamenti

Guida Compilazione Piani di Studio on-line

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

Premessa Le indicazioni seguenti sono parzialmente tratte da Wikipedia ( e da un tutorial di Pierlauro Sciarelli su comefare.

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Java? Sì, grazie. Scopo del corso

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

Manuale Utente Albo Pretorio GA

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013

Corso di Informatica

GUIDA AL PRONTUARIO MOBILE

Database 1 biblioteca universitaria. Testo del quesito

Protocollo di tracciamento e valutazione degli studenti dei corsi di italiano ICoNLingua A.A

Il Sistema Operativo (1)

Funzioni in C. Violetta Lonati

Informatica. Prof. A. Longheu. Introduzione a Java

PORTALE CLIENTI Manuale utente

Application Server per sviluppare applicazioni Java Enterprise

Strutturazione logica dei dati: i file

Ambienti di Sviluppo

Configurare TPTP in Eclipse e testare un applicazione

Introduzione alla programmazione in C

Corso di Informatica

CdL in Medicina Veterinaria - STPA AA

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a prof.

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1

MECCANISMI E POLITICHE DI PROTEZIONE 13.1

Il sistema operativo: interazione con l utente

XML (extensible Markup Language)

Gestione delle informazioni necessarie all attività di validazione degli studi di settore. Trasmissione degli esempi da valutare.

Architettura di un sistema operativo

FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. "Generate debugging information"

Ingegneria del Software 1: Eclipse

Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE

Programmazione Orientata agli Oggetti in Linguaggio Java

Транскрипт:

2 - Introduzione al linguaggio Java Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea Magistrale in Informatica Umanistica A.A. 2013/2014 Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 1 / 24

Sommario 1 Introduzione al linguaggio Java 2 Scrivere, compilare ed eseguire un programma Java Il primo programma Java Editare, compilare ed eseguire Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 2 / 24

La Genesi di Java Java è un linguaggio di programmazione nato all inizio degli anni novanta da un gruppo di lavoro della Sun Microsystems guidato da James Gosling Inizialmente concepito per scrivere programmi per il controllo di elettrodomestici (TV, frigorifero,...) linguaggio (relativamente) semplice da usare capace di essere eseguito su diversi tipi di processori che non richiedesse compilatori o interpreti troppo sofisticati (i produttori degli elettrodomestici non avrebbero investito risorse in quel settore) L idea fu di introdurre un unico, semplice linguaggio intermedio (chiamato byte-code) per il quale potessero facilmente essere scritti interpreti ad-hoc Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 3 / 24

Il byte-code Java (1) Il linguaggio Java si basa quindi su un approccio che combina compilazione (in byte-code) e interpretazione (del byte-code) Il byte-code può essere visto come l assembly di una macchina virtuale, un calcolatore ipotetico che ha caratteristiche simili (semplificate) a quelle delle architetture hardware più comuni è un linguaggio di basso livello (come l assembly) non è legato ad una particolare architettura hardware L interprete del byte-code Java è detto Java Virtual Machine (JVM) Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 4 / 24

Il byte-code Java (2) L approccio compilazione+interpretazione schematicamente: Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 5 / 24

Java e Internet Dopo breve tempo ci si rese conto che Java poteva essere usato per distribuire applicazioni su Internet il byte-code poteva essere distribuito via Web ed essere eseguito sui computer degli utenti essenziale l indipendenza dalla piattaforma hardware successo delle applet Java: programmi Java eseguibili dentro al browser Web (la JVM installata come plug-in del browser) Con il tempo altre tecnologie soppiantano Java nell ambito di Internet (e.g. JavaScript) Java rimane comunque uno tra i principali linguaggi per lo sviluppo di applicazioni desktop e distribuite, in particolare in ambiente aziendale (enterprise) Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 6 / 24

Java e gli altri linguaggi (per chi conosce C e C++) Il linguaggio Java ha una sintassi che si ispira ai linguaggi C e C++ erano probabilmente i linguaggi più usati all inizio degli anni 90 Java, come il C++, è un linguaggio a oggetti (o object-oriented) Un programma può essere strutturato come un insieme di oggetti che interagiscono l uno con l altro (vedremo...) La gestione degli oggetti (e non solo) è semplificata rispetto a C++ Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 7 / 24

Java vs JavaScript (1) (per chi conosce JavaScript) Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 8 / 24

Java vs JavaScript (2) JavaScript è un linguaggio che serve per scrivere applicazioni web client-side da eseguire all interno del browser Rispetto a JavaScript, il linguaggio Java: Prevede una fase di compilazione che effettua numerosi controlli Prevede regole sintattiche più forti (e.d. il ; alla fine di ogni comando) E un linguaggio fortemente tipato: il programmatore è tenuto a specificare il tipo di ogni variabile, e il compilatore richiede e garantisce che i valori di tali variabili verranno sempre usati in modo coerente rispetto al tipo Fa un utilizzo degli oggetti molto diverso (basato su classi) Insomma... Java è molto più rigoroso di JavaScript... quindi meglio si presta a scrivere applicazioni complesse e strutturate Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 9 / 24

Sommario 1 Introduzione al linguaggio Java 2 Scrivere, compilare ed eseguire un programma Java Il primo programma Java Editare, compilare ed eseguire Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 10 / 24

Il primo programma Java (1) Il seguente programma visualizza un semplice saluto (Hello World!) public class HelloWorld { } public static void main ( String [] args ) { } // visualizza un messaggio di saluto System. out. println (" Hello World!"); Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 11 / 24

Il primo programma Java (2) public class HelloWorld {... }... dice che stiamo definendo la classe HelloWorld Un programma Java è costituito da un insieme di classi (almeno una) public significa che questa classe è pubblica: può essere utilizzata da qualunque altra classe del programma Il contentuto della classe è racchiuso tra parentesi graffe Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 12 / 24

Il primo programma Java (3) public static void main ( String [] args ) {... }... definisce un metodo della class HelloWorld Un metodo è una funzionalità della classe messa disposizione del resto del programma o di altre parti (altri metodi) della stessa classe Questo metodo è chiamato main (principale) ed è un metodo speciale. Viene subito eseguito all inizio del programma. public significa che questo metodo può essere usato da altre classi static, void e String[] args li capiremo più avanti... Il corpo del metodo è racchiuso tra le parentesi graffe Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 13 / 24

Il primo programma Java (4) // visualizza un messaggio di saluto... è un commento Viene trascurato dal compilatore Java Serve solo per rendere più comprensibile il programma E un commento tutto ciò che si trova a destra di // (una sola riga) E un commento anche tutto ciò che si trova tra /* e */ (anche su più righe). Ad esempio: /* Questo e un esempio di commento su due righe */ Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 14 / 24

Il primo programma Java (5) System. out. println (" Hello World!");... è un comando che visualizza il messaggio Hello World System.out è un oggetto che rappresenta il canale di output standard del sistema (la console...) Un oggetto è un entità attiva che corrisponde a una determinata classe (vedremo...) println è un metodo dell oggetto System.out che stampa un messaggio e va a capo come tutti i comandi, println deve essere terminato con punto e virgola ; "Hello World!" è una stringa, ossia una sequenza di caratteri alfanumerici La stringa "Hello World!" viene passata come parametro (tra parentesi) al metodo println Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 15 / 24

Struttura di base Per un po di tempo i programmi Java che considereremo avranno sempre la struttura public class NomeClasse { } public static void main ( String [] args ) { } ossia:... Una sola classe (con nome arbitrario) Il solo metodo main (scritto esattamente come nell esempio) Il corpo del main conterrà tutti i comandi del programma Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 16 / 24

Sommario 1 Introduzione al linguaggio Java 2 Scrivere, compilare ed eseguire un programma Java Il primo programma Java Editare, compilare ed eseguire Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 17 / 24

Editare un programma Java Per scrivere un programma Java si può usare un qualunque editor di testi Tra i più semplici: su Linux: gedit su Windows: il blocco note (o l ottimo Notepad++ http://notepad-plus-plus.org/) E sufficiente aprire l editor, digitare il programma e salvarlo (in una opportuna directory) con il nome <nomeclasse>.java Quindi la classe HelloWorld vista prima dovrà essere salvata come HelloWorld.java Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 18 / 24

Compilare ed eseguire un programma Java (1) Per compliare ed eseguire un programma Java avremo bisogno di un compilatore Java e di una Java Virtual Machine (JVM) Entrambi questi strumenti sono forniti dal Java Development Kit (JDK). Sul sito web del corso trovate i link alle pagine che vi consentono di scaricare il JDK Un modo per eseguire il compilatore java e la JVM è tramite la console di sistema Su Linux (e su MacOS) si chiama Terminale Su Windows si chiama Prompt dei comandi Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 19 / 24

Compilare ed eseguire un programma Java (2) Primo passo: aprire il terminale/prompt dei comandi Terminale Tutti i programmi Accessori Prompt dei comandi Secondo passo: spostarsi nella cartella (directory) che contiene il programma usando i comandi ls (Linux) o dir (Windows) e cd (Linux/Win) ls e dir mostrano il contenuto della directory corrente cd nomedir consente di entrare dentro la directory con nome nomedir cd.. consente di uscire dalla directory corrente Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 20 / 24

Compilare ed eseguire un programma Java (3) Terzo passo: Raggiunta la directory che contiene il programma, si può eseguire il compilatore Java tramite il comando javac javac <nomeclasse>.java Quindi, nel caso del programma HelloWorld dovremo digitare javac HelloWorld.java (N.B. il file deve esistere nella directory!) Nota: Se javac non funziona può darsi che sia necessario impostare la variabile di sistema PATH (vedere note installazione di Java sul sito del corso) Eventuali errori nel programma vengono segnalati ora! Se il programma non contiene errori, il risultato della compilazione è il file <nomeclasse>.class (nell esempio: HelloWorld.class) che contiene il byte-code Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 21 / 24

Compilare ed eseguire un programma Java (4) Quarto passo: Bisogna ora eseguire la Java Virtual Machine tramite il comando java java <nomeclasse> Quindi, nel caso del programma HelloWorld dovremo digitare java HelloWorld e il programma ci risponderà Hello World! Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 22 / 24

Compilare ed eseguire un programma Java (5) Riassumendo... Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 23 / 24

Uso della shell Quando abbiamo usato la console di sistema (Terminale o Prompt dei comandi) abbiamo in realtà interagito con un programma detto shell La shell è il programma che esegue interattivamente comandi di sistema (cd, dir, ls,...) Tramite la shell si possono fare un sacco di cose (creare/rimuovere directory, eseguire programmi, controllare i programmi attivi, ecc...) Fino a un po di anni fa la shell era l unico mezzo per usare un computer Esistono diverse shell (che eseguono comandi diversi) Su Linux la più comune si chiama bash Su Windows l unica in pratica disponibile deriva dall MS-DOS Trovate riferimenti a guide su bash e MS-DOS nel sito web del corso! Paolo Milazzo (Università di Pisa) Programmazione - Intro Java A.A. 2013/2014 24 / 24