Introduzione. Chi sono? Come contattarmi? Bibliografia. Bibliografia. Bibliografia. Bibliografia. Matteo Baldoni. Programmazione in Rete e Laboratorio

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Introduzione. Chi sono? Come contattarmi? Bibliografia. Bibliografia. Bibliografia. Bibliografia. Matteo Baldoni. Programmazione in Rete e Laboratorio"

Transcript

1 Introduzione Programmazione in Rete e Laboratorio Chi sono? Come contattarmi? Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino Corso Svizzera, 185 I Torino (ITALY) Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I Torino baldoni@di.unito.it baldoni@di.unito.it URL: Tel.: Fax.: Pagina del corso: Sono nato a Torino nel 1968, nel febbraio 1993 mi sono laureato con lode in Scienze dell Informazione e nel febbraio 1998 sono diventato Dottore in Ricerca in Informatica. Dal luglio 1999 sono ricercatore in Informatica presso il Dipartimento di Informatica dell Università degli Studi di Torino. 2 Bibliografia Bibliografia Horstmann C. S. - Cornell G. Java 2 I fondamenti - seconda edizione, Mc Graw Hill, ISBN , Giugno 2001, pp. 826 con CD-ROM (Euro 54,00) Java 2 tecniche avanzate, Mc Graw Hill, ISBN , Aprile 2000, pp. 842 con CD- ROM (Euro 55,50) Eckel, B.Thinking in Java. Second Edition. Prentice-Hall Computer Books, ISBN: (anche online: m) Schimdt, D. Programming Principles in Java: Architectures and Interfaces. (On-line: chmidt/cis200/) 3 4 Bibliografia Bibliografia Cay S. Horstman. Concetti di Informatica e fondamenti di Java 2. Apogeo, ISBN: Si veda anche: /00668/scheda Fowler M. UML Distilled prima edizione italiana, Guida rapida allo standard Object Modeling Language, Addison Wesley, pp 157, ISBN , Settembre 2000 (Euro 24,79) UML Distilled (2nd ed.), Addison Wesley Longman, Inc., Nel 2002 e` uscita la seconda edizione

2 Bibliografia Matteo Baldoni. Un introduzione al paradigma ad oggetti attraverso lo schema Kernel-Modulo. Rapporto Tecnico del Dip. Di Informatica e comparso nei numeri settembre, ottobre e novembre 2002 di Mokabyte ( JAVA: dove e come 7 8 Cenni storici Java Il paradigma Object-Oriented (OO) non e` nuovo: Simula, Smalltalk, C++ Green, 1991 della Sun Microsystem, linguaggio per dispositivi di consumo non legato ad un particolare microprocessore HotJava, 1994, un browser per internet Netscape 2.0, 1995, abilitato all uso di Java Java 1.02, 1996 Java 1.1, 1997 Java 2, 1998 (versione 1.2 in poi) Le caratteristiche principali di Java Object oriented: progettato per essere un linguaggio ad oggetti, anche se meno puro di Smalltalk Robusto non ci sono puntatori garbage collection Distribuito costrutti per la concorrenza 9 10 Java Dove trovare Java? Indipendente dall'architettura il compilatore genera codice intermedio (bytecode) che viene interpretato Java e` disponibile (Java 2 Standard Edition) Esistono versioni per: Applicazioni su internet applet sicurezza Ambiente ricco di tipi di dati predefiniti Sun Solaris Windows Linux (anche in RPM) Java 2 Runtime Environment Java 2 S.E. Documentation grafica programmazione su internet accesso a database

3 Dove trovare Java? Cosa ci serve? spesso anche dal vostro giornalaio (soluzione consigliata se non si ha un collegamento a internet veloce) Java e` distribuito gratuitamente dalla Sun Microsystems Attualmente e` disponibile la versione 1.4.x Dalla versione 1.3.x tecnologia HotSpot (just in time compiler) Compilatore e Java VM (con jit compiler) della IBM jikes, compilatore opensource della IBM kaffe, Java VM opensource (con jit compiler) gcj, compilatore opensource in codice nativo della GNU (Free Software Foundation) istruzioni di installazione j2sdk1_3_0-win.exe (29,4 Mb) j2sdk1_3_0-doc.zip (21,2 Mb) tutorial.zip (9,15 Mb) Installazione di Java Installazione di Java: PATH Per Windows bastano due click Per Linux è sufficiente lanciare lo script di installazione E` utile installarsi anche la documentazione e il tutorial in formato HTML 15 Windows 9x (nell autoexec.bat): set PATH=%PATH%;C:\JDK1.3\BIN Windows NT/2000 (Risorse computer/ambiente): aggiungere la variabile utente PATH come per Win9x Linux/UNIX (nel.bashrc): PATH=$PATH:/opt/jdk1.3/bin EXPORT PATH Linux/UNIX (nel.cshrc): aggiungere il path nella definizione della variabile PATH gia` presente (set path= ) NOTA: controllare che non sia definita la variabile di ambiente CLASSPATH 16 Editor per Java Il Tutorial La Sun distribuisce l ambiente di sviluppo Forte (scritto in Java) Alcuni semplici editor disponibili nei nostri laboratori: vim/gvim, syntax enlightment (opensource), windows e UNIX TextPad, syntax enlightment, compile e run button (shareware), solo per windows jipe ( syntax enlightment, compile e run button, browsing dei metodi e delle classi (opensource), è scritto in Java Una semplice guida alla programmazione in Java È un ipertesto in HTML quindi consultabile mediante un qualsiasi browser

4 La Documentazione Contiene TUTTE le informazioni sulla versione in uso di Java In particolare contiene il Java 2 Platform API Specification E` in formato HTML JDK1.3: il direttorio Gli eseguibili: javac java javadoc Il nome del direttorio di installazione La documentazione sulle Librerie (in HTML) Il tutorial di Java (in HTML) Nota: il tutorial e la documentazione NON sono inclusi nell installazione di Java Esempi di programmi Java (e applet) I sorgenti delle librerie Il primo programma in Java Come usare javac e java Un semplice programma che da` il benvenuto nel mondo della programmazione Java Il linguaggio e` case sensitive In un file di nome BenvenutoInJava.java (per convenzione dello stesso nome dell unica classe pubblica contenuta dal file stesso) Per compilare: javac BenvenutoInJava.java che produrra` un file BenvenutoInJava.class per eseguire il programma: java BenvenutoInJava nome della classe pubblica BenvenutoInJava.java public class BenvenutoInJava { public static void main(string[] args) { System.out.println("Benvenuto in Java!"); oggetto di sistema metodo conclude una istruzione BenvenutoInJava.java javac e` un compilatore BenvenutoInJava.class java e` un interprete Bytecode! Output Interpretazione Interpretazione Codice Sorgente MacOS (JavaScript, Scheme, Prolog): Interazione. Più facile modificare un programma durante l'esecuzione Apple Intel/Windows Affinché le due persone di lingua diversa possano dialogare tra di loro (nel caso nessuna delle due conosca la lingua dell altro) è necessario che qualcuno interpreti (traduca sul momento) quanto dice una persona nella propria lingua nella lingua di chi ascolta Si interpreta quando è necessario una stretta interazione, quando si desidera dialogare e non solo trasmettere un messaggio

5 Traduzione (o Compilazione) Codice Sorgente Compilatore Compilatore MacOS Compilatore Compilazione (Pascal, C, Ada, C++): Efficienza di esecuzione. Il codice generato dal compilatore può essere ottimizzato, perché la compilazione è fatta una sola volta binario binario binario Apple Intel/Windows 25 Traduzione (o Compilazione) La traduzione è adatta per comunicare messaggio, come ad esempio una lettera Anche per effettuare una traduzione è necessario l intervento di qualcuno che sia in grado di comprendere le frasi di un linguaggio e riportarle in un altro ma questo può operare in tempi separati rispetto la scrittura del messaggio e la sua lettura La lettura è più rapida e semplice, il traduttore ha senz altro avuto tempo per meglio adattare il testo ma si penalizza l interattività 26 Soluzione Mista: Java Fondamenti Soluzione mista (Java): Portabilità. Per eseguire un programma su macchine diverse è sufficiente implementare l'interprete del linguaggio intermedio, e non tutto il compilatore bytecode Codice Java Java/Solaris Java/MacOS Apple La sintassi dei costrutti di base (dichiarazioni di variabili, istruzioni di base, ecc.) e` molto simile al linguaggio C Variabili e loro dichiarazione Controllo del flusso Compilatore Java Java/GNU-Linux Java/PalmOS Palm Commenti /* Commento su piu` linee */ public class BenvenutoInJava { public static void main(string[] args) { System.out.println("Benvenuto in Java!"); // Commento su una sola linea Commenti su piu` linee possono essere fatti racchiudendoli tra i simboli /* e */ Commenti su di una sola linea possono essere fatti facendoli precedere dal simbolo // I commenti non compaiono nel codice eseguibile Esiste anche il commento racchiuso tra /** e */ 29 Tipi primitivi Java e` un linguaggio fortemente tipato, ogni variabile deve avere un tipo dichiarato Esistono otto tipi primitivi, sei per i tipi di numeri, uno per i caratteri (codifica Unicode) e uno per boolean int (4 byte) - float (4 byte) short (2 byte) - double (8 bytte) long (8 byte) - char byte (1 byte) - boolean I tipi primitivi non sono oggetti (puntatori) Non dipendono dalla macchina di destinazione 30 5

6 Dichiarazione di variabile Operatori identificatore = lettera (lettera cifra)* lettera e cifra nel senso Unicode Lunghezza illimitata Per convenzione si usano nomi che iniziano con una lettera minuscola L inizializzazione e` come in C int variabileintera; long variabileinteradi8byte; Assegnamento Operatori aritmetici: + - * / % Assegnamento e operatori aritmetici: += -= *= /= %= (es. a += i;) Operatori di incremento (in posizione di prefisso o di suffisso di una variabile numerica): ++ e -- (es. i++; a=--i;) Operatori relazionali e booleani: ==!= < > <= >= &&! Operatori sui bit: & ^ ~ >> << Parentesi: ( ) double pigrecoapprossimato = ; boolean flag = false; // o false o true! Controllo del flusso If Then e If Then Else Le stesse del C/C++ if then if then else while (loop indeterminato) do while (loop indeterminato) for (loop determinato) switch break if (condizione) istruzione; if (condizione) istruzione; else istruzione; Al posto di un istruzione; puo` comparire un blocco di istruzioni: { sequenza istruzioni if (etapersona > 18) { System.out.println( Maggiorenne ); System.out.println( Eta`: + etapersona); else System.out.println( Minorenne ); While while (condizione) { blocco di istruzioni Si puo` avere anche un istruzione anziche` un blocco (quindi conclusa come sempre da ;) int temp; while (z!= w) { if (z < w) { temp = z; z = w; w = temp; z -= w; Calcola il MCD tra I numeri interi z e w System.out.println( Massimo Comune Divisore: + z); Do While do { blocco istruzioni while (condizione); esegue il blocco di istruzioni almeno una volta simile al repeat until del Pascal ma cicla per vero anziche` per falso e` usato piu` raramente rispetto al while int i=0; int x=0; do { x = x * i; //oppure x = * i++; i++; while (i<10);

7 For Break for (iniz.; condizione; step) { istruzioni Tipicamente utilizzato per la scansione di vettori (array) Permette di uscire da un loop break etichetta; for (int i=0; i<n; i++) System.out.println( Elemento + i + : + elemento[i]); int i=0; for (i=0; i<n; i++) if (elemento[i] == elementocercato) if (i!= n) System.out.println( Elemento trovato in pos.: + i); else System.out.println( Elemento non trovato ); Break Il codice precedente senza uso del break il codice e` piu` complicato, ma NON ABUSARNE int i=0; boolean trovato = false; while (i<n &&!trovato) { if (elemento[i] == elementocercato) // oppure i++ trovato = true; i++; if (trovato) System.out.println( Elemento trovato in posizione: + i); else System.out.println( Elemento non trovato ); Break Serve per uscire da piu` loop annidati Simile al famigerato goto, ma NON ABUSARNE int i; int j; for_esterno: for (i=0; i<n; i++) for (j=0; j<m; j++) if (elemento[i][j] == elementocercato) break for_esterno; if ((i!= n) && (j!= m)) System.out.println( Elemento trovato in: +i+ +j); else System.out.println( Elemento non trovato ); Swicth Array Permette di gestire condizioni di scelta con molte alternative (cascata di if then else) In Java applicabile solo su valori di tipo char e numerici (ma non long) swicth (scelta){ case 1: case 2: case 3: default: sequenza di istruzioni Senza break si eseguirebbero le istruzioni dei casi successivi a quello selezionato in cascata 41 Gli array sono oggetti veri e propri (e quindi vanno prima creati esplicitamente dal programmatore per essere utilizzati) Hanno una dimensione fissa (dopo la creazione) Esistono solo unidimensionali (ma e` possibile definire array di array) Il primo elemento ha indice 0 La creazione avviene mediante l operatore new Gli elementi di un array possono essere oggetti qualsiasi Libreria Java Collection (Vector, List, Map, ecc.) 42 7

8 Array Es.: la dichiarazione di un array che puo` contenere 100 numeri interi Gli elementi saranno indicizzati da 0 a 99 Controllo a run time sul valore dell indice tipo di un elemento dell array tipo array int[] arrayofint = new int[100]; nome dell array arrayofint[5] operatore che permette di creare un oggetto indice numero di elementi dell array Array Il nome dell array e` un puntatore ad una struttura contenente i vari elementi ma differenza del C/C++ il nome dell array non indica anche il primo elemento dell array stesso (non esiste un aritmetica dei puntatori) In Java non esistono analoghi di & e * del C/C++ int array_interi[]; int *array_interi; array_interi[2] *(array_interi + 2) in C/C++ sono equivalenti in C/C++ sono equivalenti Array Se assegno un array ad un altro non copio gli elementi che esso contiene ma semplicemente il valore del puntatore, i due array condivideranno la stessa struttura (esiste pero` arraycopy nella classe System) length restituisce la lunghezza di un array arrayofint int[] arrayofint = new int[6]; int[] altroarrayofint; altroarrayofint altroarrayofint = arrayofint; System.out.println(arrayOfInt.length); stampa 6 45 Inizializzazione di array Mediante un loop (tipicamente un ciclo for) oppure durante la definizione stessa array anonimi come parametri attuali int[] arrayofint = new int[100]; for (int i=0; i<100; i++) arrayofint[i] = i; int[] arrayofint = {1, 2, 4, 10; new int[] {1, 2, 4, 10 a.metodo(new int[] {1, 2, 4, 10); utile per array con pochi elementi utile per essere passato come parametro attuale di un metodo senza dover creare solo per questo una variabile 46 Array multidimensionali Il metodo tostring() Ossia array di array (ma non matrici!) Ossia un elemento di un array puo` essere a sua volta un array int[][] arrayofarrayofint = new int[10][5]; int[][] arrayofarrayofint = new int[10][]; for (int i=0; i<10; i++) arrayofarrayofint[i] = new int[5]; quadrato di elementi 10 x 5 E` il metodo che viene automaticamente richiamato per la conversione di un oggetto in una stringa da stampare Puo` essere ridefinito per adattarlo alle proprie esigenze int[][] arrayofarrayofint = new int[10][]; for (int i=0; i<10; i++) arrayofarrayofint[i] = new int[i]; triangolo di elementi

9 Il metodo tostring() Metodi e Parametri public class Counter { public Counter() { nomecontatore = "Contatore anonimo"; public Counter(int val){ c = val; nomecontatore = "Contatore anonimo"; public Counter(int val, String nome){ c = val; nomecontatore = nome; public void setname(string nome) { nomecontatore = nome; public String tostring(){ return ("Valore contatore " + nomecontatore + ": " + c); private int c; private String nomecontatore; overriding dell omonimo metodo nella classe Object Un nome al contatore Il passaggio dei parametri in un metodo avviene solo e sempre per valore Ad un metodo possono essere passati oggetti come parametri Attenzione! Gli oggetti sono in pratica puntatori quindi e` il puntatore che viene passato per valore non l oggetto che rappresenta Array come parametri (gli array sono oggetti!)

Introduzione. Chi sono? Come contattarmi? Bibliografia. Bibliografia. Bibliografia. Bibliografia. Matteo Baldoni. Programmazione in Rete e Laboratorio

Introduzione. Chi sono? Come contattarmi? Bibliografia. Bibliografia. Bibliografia. Bibliografia. Matteo Baldoni. Programmazione in Rete e Laboratorio Introduzione Programmazione in Rete e Laboratorio Chi sono? Come contattarmi? Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino Corso Svizzera, 185 I-10149 Torino (ITALY) Matteo

Dettagli

INSTALLAZIONE, DOCUMENTAZIONE, TUTORIAL E PRIMI PROGRAMMI

INSTALLAZIONE, DOCUMENTAZIONE, TUTORIAL E PRIMI PROGRAMMI Java 2: 2 installazione, documentazione,, tutorial e primo programma INSTALLAZIONE, DOCUMENTAZIONE, TUTORIAL E PRIMI PROGRAMMI Marco Botta Dipartimento di Informatica - Universita` degli Studi di Torino

Dettagli

Introduzione. Chi sono? Come contattarmi? Programmazione I e Laboratorio. Matteo Baldoni

Introduzione. Chi sono? Come contattarmi? Programmazione I e Laboratorio. Matteo Baldoni Introduzione Programmazione I e Laboratorio Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

Dettagli

Introduzione. Fondamenti di programmazione Java

Introduzione. Fondamenti di programmazione Java Introduzione Fondamenti di programmazione Java Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

Dettagli

Primi programmi in Java

Primi programmi in Java Primi programmi in Java II edizione Master Web Technology e Security Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino (Italy) baldoni@di.unito.it

Dettagli

Cenni Storici. Paradigmi di Programmazione: Linguaggi di Programmazione. Il White paper di Java. Dove trovare Java? Dove trovare Java? Cosa ci serve?

Cenni Storici. Paradigmi di Programmazione: Linguaggi di Programmazione. Il White paper di Java. Dove trovare Java? Dove trovare Java? Cosa ci serve? Cenni Storici Paradigmi di Programmazione: Linguaggi di Programmazione INSTALLAZIONE, DOCUMENTAZIONE, TUTORIAL E PRIMI PROGRAMMI Matteo Baldoni Dipartimento di Informatica - Universita` degli Studi di

Dettagli

Introduzione. Chi sono? Come contattarmi? Laboratorio di Programmazione ad Oggeti. Matteo Baldoni

Introduzione. Chi sono? Come contattarmi? Laboratorio di Programmazione ad Oggeti. Matteo Baldoni Introduzione Laboratorio di Programmazione ad Oggeti Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

Dettagli

Strutture dati: array & co.

Strutture dati: array & co. Strutture dati: array & co. Fondamenti di programmazione Java Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

Dettagli

Strutture dati: array & co.

Strutture dati: array & co. Strutture dati: array & co. Fondamenti di programmazione Java Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

Dettagli

Introduzione. Chi sono? Come contattarmi? Contenuti del corso. Bibliografia. Bibliografia. Bibliografia. Matteo Baldoni

Introduzione. Chi sono? Come contattarmi? Contenuti del corso. Bibliografia. Bibliografia. Bibliografia. Matteo Baldoni Introduzione Linguaggi di Programmazione: Paradigmi di Programmazione (Sperimentazioni) Chi sono? Come contattarmi? Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino Corso Svizzera,

Dettagli

Corso di Architettura degli Elaboratori

Corso di Architettura degli Elaboratori Corso di Architettura degli Elaboratori Introduzione: linguaggi, livelli e macchine virtuali Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it

Dettagli

Linguaggi di Programmazione: Paradigmi di Programmazione

Linguaggi di Programmazione: Paradigmi di Programmazione Linguaggi di Programmazione: Paradigmi di Programmazione Strutture Dati: & Co. Matteo Baldoni Dipartimento di Informatica - Universita` degli Studi di Torino C.so Svizzera, 185 - I-10149 Torino (Italy)

Dettagli

Introduzione. Chi sono? Come contattarmi? II edizione Master Web Technology e Security. Matteo Baldoni

Introduzione. Chi sono? Come contattarmi? II edizione Master Web Technology e Security. Matteo Baldoni Introduzione II edizione Master Web Technology e Security Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino (Italy) baldoni@di.unito.it http://www.di.unito.it/~baldoni

Dettagli

Strutture dati: array & co.

Strutture dati: array & co. Strutture dati: array & co. Laboratorio di Programmazione ad Oggeti Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

Dettagli

Introduzione a Java. Riferimenti

Introduzione a Java. Riferimenti Introduzione a Java Si ringraziano Massimiliano Curcio e Matteo Giacalone 1: Introduction 1 Riferimenti! Java tutorial: http://java.sun.com/docs/books/tutorial/! Il Java tutorial è parte di una più ampia

Dettagli

Programmazione in rete e laboratorio a.a. 2002/03

Programmazione in rete e laboratorio a.a. 2002/03 Programmazione in rete e laboratorio a.a. 2002/03 Scopo del corso: Presentare gli aspetti principali della programmazione ad oggetti Introduzione a JAVA Alberto Martelli Introdurre il linguaggio Java Realizzare

Dettagli

Le basi del linguaggio Java

Le basi del linguaggio Java Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una

Dettagli

Strutture dati: array & co.

Strutture dati: array & co. Strutture dati: array & co. Programmazione in Rete e Laboratorio Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino baldoni@di.unito.it http://www.di.unito.it/~baldoni/didattica

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA 1 Struttura di un programma Java Un programma Java consiste in un insieme di definizioni di classi. In genere

Dettagli

IL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

IL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Primo esempio di un programma Java Semplicissimo programma

Dettagli

Linguaggi ad oggetti. Linguaggi di Programmazione: Paradigmi di Programmazione. I principali linguaggi ad oggetti. Programmazione ad oggetti.

Linguaggi ad oggetti. Linguaggi di Programmazione: Paradigmi di Programmazione. I principali linguaggi ad oggetti. Programmazione ad oggetti. Linguaggi di Programmazione: Paradigmi di Programmazione Linguaggi ad oggetti I linguaggi di programmazione ad oggetti consentono di applicare metodologie di sviluppo di programmi "object oriented", ossia

Dettagli

IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale

IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Lettura di dati da input In Java la lettura di dati da input

Dettagli

IL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Primo esempio di un programma Java

IL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Primo esempio di un programma Java Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Primo esempio di un programma Java Semplicissimo programma

Dettagli

Programmazione lato client. JavaScript. Applicazioni di Rete M. Ribaudo - DISI. JavaScript

Programmazione lato client. JavaScript. Applicazioni di Rete M. Ribaudo - DISI. JavaScript Programmazione lato client Netscape: Microsoft: JScript ECMAScript (ECMA-262) (European Computer Manufactures Association) 1 Linguaggio di script interpretato con alcune caratteristiche Object Oriented

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Dettagli

Linguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi

Linguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi Linguaggio Java Robusto Non permette costrutti pericolosi Eredità Multipla Gestione della Memoria Orientato agli oggetti Ogni cosa ha un tipo Ogni tipo è un oggetto (quasi) Protegge e gestisce dagli errori

Dettagli

JavaScript JavaScript Programmazione lato client JScript JavaScript ECMAScript

JavaScript JavaScript Programmazione lato client JScript JavaScript ECMAScript Programmazione lato client Netscape: Microsoft: JScript ECMAScript (ECMA-262) (European Computer Manufactures Association) Linguaggio di script interpretato con alcune caratteristiche Object Oriented HTTP

Dettagli

Introduzione a Java e all'ambiente di sviluppo

Introduzione a Java e all'ambiente di sviluppo Introduzione a Java e all'ambiente di sviluppo Programmazione 2, a.a. 2006-2007 Nota: per esclusivo uso interno al corso, riferimenti bibliografici forniti a lezione Schema minimo di un applicazione public

Dettagli

3) Descrivere l architettura di un elaboratore tramite astrazione a livelli

3) Descrivere l architettura di un elaboratore tramite astrazione a livelli Di seguito sono elencati una serie di domande tipo esonero ; i quiz vogliono dare un sistema di autovalutazione e di confronto allo studente che deve prepararsi alla prova di metà corso. Il numero e l

Dettagli

AMBIENTI DI PROGRAMMAZIONE

AMBIENTI DI PROGRAMMAZIONE AMBIENTI DI PROGRAMMAZIONE È l'insieme dei programmi che consentono la scrittura, la verifica e l'esecuzione di nuovi programmi (fasi di sviluppo) Sviluppo di un programma Affinché un programma scritto

Dettagli

Esonero di Informatica I. Ingegneria Medica

Esonero di Informatica I. Ingegneria Medica Di seguito sono elencati una serie di domande tipo esonero ; i quiz vogliono dare un sistema di autovalutazione e di confronto allo studente che deve prepararsi alla prova di metà corso. Il numero e l

Dettagli

Gli oggetti. Ogni oggetto ha un interfaccia e ogni oggetto ha un tipo. Incapsulamento. Oggetti. Contatore. Invio di Messaggi

Gli oggetti. Ogni oggetto ha un interfaccia e ogni oggetto ha un tipo. Incapsulamento. Oggetti. Contatore. Invio di Messaggi Gli oggetti Linguaggi di Programmazione: Paradigmi di Programmazione (Sperimentazioni) Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-149 Torino Ogni

Dettagli

Programmazione I - corso B a.a prof. Viviana Bono

Programmazione I - corso B a.a prof. Viviana Bono Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 2009-10 prof. Viviana Bono Blocco 12 Riepilogo e complementi sui tipi Ripasso del sistema di tipi

Dettagli

IL LINGUAGGIO JAVA. Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per scrivere frasi ben formate

IL LINGUAGGIO JAVA. Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per scrivere frasi ben formate Fondamenti di Informatica IL LINGUAGGIO JAVA Sintassi, Semantica, Input, Tipi Elementari e Istruzione Condizionale 1 Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per

Dettagli

Indice. Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java. Compilazione ed esecuzione di un programma

Indice. Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java. Compilazione ed esecuzione di un programma Indice Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java Introduzione all ambiente di sviluppo - Compilazione ed esecuzione di un programma - Compilazione ed esecuzione

Dettagli

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO CENTRO STUDI ULISSE Via Buccino, n. 22 - C.a.p. 84018 - Scafati (SA) Tel. Fax. 081.19970299-339.2365416-349.4152010 E-mail: info@centrostudiulisse.it - www.centrostudiulisse.it OCA JAVA 7 SE PROGRAMMER

Dettagli

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave

Dettagli

Programmazione in Java e gestione della grafica (I modulo) Lezione 2: Prime nozioni di Java

Programmazione in Java e gestione della grafica (I modulo) Lezione 2: Prime nozioni di Java Programmazione in Java e gestione della grafica (I modulo) Lezione 2: Prime nozioni di Java Programmi Un programma è un insieme di istruzioni che il computer deve seguire Usiamo programmi in continuazione

Dettagli

Javascript: il browser

Javascript: il browser Javascript: il browser Un browser è un programma Un browser interpreta il linguaggio HTML e visualizza le pagine sullo schermo Per la visualizzazione delle pagine un browser si appoggia al software di

Dettagli

Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche

Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Indice. Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java. Compilazione ed esecuzione di un programma

Indice. Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java. Compilazione ed esecuzione di un programma Indice Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java Introduzione all ambiente di sviluppo - Compilazione ed esecuzione di un programma - Compilazione ed esecuzione

Dettagli

Cast implicito. Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto. byte short int long float double

Cast implicito. Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto. byte short int long float double Il cast Cast implicito Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto Per esempio: byte short int long float double int x = 10; float f; f = x; Il valore di

Dettagli

Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1

Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1 Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1 Cosa è il C++ E un linguaggio di programmazione derivato dal C Può essere usato per modificare il SO Unix e i suoi derivati (Linux)

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso Obiettivi Di seguito vengono riportate una serie di domande che possono essere poste durante la prova formale del corso. Le seguenti domande non sono da ritenersi esaustive ma esemplificative. 1. Architettura

Dettagli

Marco Faella Introduzione al corso

Marco Faella Introduzione al corso Marco Faella Introduzione al corso 1 Lezione n. Parole chiave: Java Corso di Laurea: Informatica Insegnamento: Linguaggi di Programmazione II Email Docente: faella.didattica@gmail.com A.A. 2009-2010 Linguaggi

Dettagli

Dati due punti sul piano calcolare la loro distanza

Dati due punti sul piano calcolare la loro distanza Introduzione al C Primo esempio in C Dati due punti sul piano calcolare la loro distanza Soluzione: la distanza fra due punti si calcola secondo il teorema di Pitagora, con la formula: y Distanza = (lato12

Dettagli

A. Ferrari. informatica. Java basi del linguaggio. Alberto Ferrari Informatica

A. Ferrari. informatica. Java basi del linguaggio. Alberto Ferrari Informatica informatica Java basi del linguaggio Alberto Ferrari Informatica struttura di un programma Java /** * Classe EsempioProgramma * Un esempio di programmazione in Java * @author 4A Informatica */ public class

Dettagli

Riassunto. I mattoni di base di un programma Java. Oggi. Un programma complicato. Oggi. Perché è complicato? Stefano Mizzaro 1.

Riassunto. I mattoni di base di un programma Java. Oggi. Un programma complicato. Oggi. Perché è complicato? Stefano Mizzaro 1. I mattoni di base di un programma Java Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione, lezione 2 28 settembre

Dettagli

Il paradigma di programmazione a oggetti

Il paradigma di programmazione a oggetti Il paradigma di Paradigma a oggetti Il paradigma di Corso di laurea in Comunicazione digitale Formalizza mediante le classi il concetto di modulo che incapsula i dati e le procedure per modificarli Le

Dettagli

Laboratorio di Programmazione Lezione 1. Cristian Del Fabbro

Laboratorio di Programmazione Lezione 1. Cristian Del Fabbro Laboratorio di Programmazione Lezione 1 Cristian Del Fabbro Reperibilità homepage corso: https://users.dimi.uniud.it/~cristian.delfabbro/teaching.php email: cristian.delfabbro@uniud.it telefono: 0432 558676

Dettagli

Linguaggi di Programmazione I Lezione 10

Linguaggi di Programmazione I Lezione 10 Linguaggi di Programmazione I Lezione 10 Prof. Marcello Sette mailto://marcello.sette@gmail.com http://sette.dnsalias.org 8 maggio 2008 Array 3 Dichiarazione...........................................................

Dettagli

Il paradigma di programmazione a oggetti

Il paradigma di programmazione a oggetti Paradigma a Il paradigma di programmazione a Fondamenti di architettura e programmazione Corso di laurea in Comunicazione digitale Formalizza mediante le classi il concetto di modulo che incapsula i dati

Dettagli

JavaScript Core Language

JavaScript Core Language Master Web Careers Matteo Baldoni Dipartimento di Informatica -Università degli Studi di Torino C.so Svizzera, 185 I-10149 Torino E-mail: baldoni@di.unito.it URL: http://www.di.unito.it/~baldoni JavaScript

Dettagli

Introduzione al linguaggio C

Introduzione al linguaggio C Linguaggio C Introduzione al linguaggio C Sistemi di sviluppo integrati Noti anche come IDE: Integrated Development Environment Un pacchetto software che permette di scrivere, preprocessare, compilare,

Dettagli

Progettazione del Software

Progettazione del Software Università di Roma La Sapienza, Facoltà di Ingegneria Corso di Progettazione del Software Corso di Laurea in Ingegneria Gestionale Prof. Toni Mancini & Prof. Monica Scannapieco AUTOV.Java.1 Nozioni Preliminari

Dettagli

Le command line di Java

Le command line di Java Le command line di Java Esercitazioni di Programmazione 2 Novella Brugnolli brugnoll@science.unitn.it Ambiente di lavoro Per compilare ed eseguire un programma Java abbiamo bisogno di: The JavaTM 2 Platform,

Dettagli

Programmare un computer. JavaScript Core Language. Programmare un computer: astrazione. Programmare un computer: astrazione

Programmare un computer. JavaScript Core Language. Programmare un computer: astrazione. Programmare un computer: astrazione Core Language Introduzione alla Programm e Programmare un computer Un computer è una macchina programmabile, tuttavia esso non è direttamente utilizzabile da parte degli utenti poiché richiederebbe la

Dettagli

Javascript: il browser

Javascript: il browser Javascript: il browser Un browser è un programma Un browser interpreta il linguaggio HTML e visualizza le pagine sullo schermo Per la visualizzazione delle pagine un browser si appoggia al software di

Dettagli

OO puro. Primi concetti di Java. Tipi primitivi. Ogni cosa è un oggetto. Java è object-oriented puro Non come il C+ + (OO ibrido) Lorenzo Bettini

OO puro. Primi concetti di Java. Tipi primitivi. Ogni cosa è un oggetto. Java è object-oriented puro Non come il C+ + (OO ibrido) Lorenzo Bettini Primi concetti di Java Lorenzo Bettini OO puro Java è object-oriented puro Non come il C+ + (OO ibrido) Per compatibilità col C Ogni cosa è un oggetto Gli oggetti si manipolano tramite riferimenti String

Dettagli

1

1 Manuali di C Linguaggio C B. W. Kernigan, D. M. Ritchie Jackson La guida completa al C H. Schildt McGraw-Hill Fondamenti di Informatica 1 Linguaggio C Creato nei primi anni 70 per sviluppare il S.O. Unix

Dettagli

Java: un linguaggio per applicazioni di rete

Java: un linguaggio per applicazioni di rete Java: un linguaggio per applicazioni di rete Moreno Falaschi Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena March 3, 2014 1 Caratteristiche di Java (SUN) Linguaggio

Dettagli

Fondamenti di Informatica. Ingegneria elettronica

Fondamenti di Informatica. Ingegneria elettronica Fondamenti di Informatica Ingegneria elettronica Prima esercitazione Cecilia Catalano Sistema Operativo Il S.O. è costituito da un insieme di programmi che permettono di utilizzare e gestire tutte le risorse

Dettagli

Introduzione al Linguaggio C ed all IDE DEV-C++

Introduzione al Linguaggio C ed all IDE DEV-C++ Microsoft Windows e Dev-C++ Introduzione al Linguaggio C ed all IDE DEV-C++ Le Esercitazioni in Laboratorio Laboratorio M1 + MLAB1/2: Edificio Via Valotti, primo piano e piano interrato Orario: Mercoledì

Dettagli

Programmazione A.A Costrutti di base. ( Lezione XII, parte I ) Gestione dell input. Prof. Giovanni Gallo Dr.

Programmazione A.A Costrutti di base. ( Lezione XII, parte I ) Gestione dell input. Prof. Giovanni Gallo Dr. Programmazione A.A. 2002-03 I Costrutti di base ( Lezione XII, parte I ) Gestione dell input Prof. Giovanni Gallo Dr. Gianluca Cincotti Dipartimento di Matematica e Informatica Università di Catania e-mail

Dettagli

Lezione 2 Introduzione a Java (2)

Lezione 2 Introduzione a Java (2) Lezione 2 Introduzione a Java (2) Vittorio Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Organizzazione della lezione Una review sulle caratteristiche

Dettagli

Fondamenti di Programmazione

Fondamenti di Programmazione Fondamenti di Programmazione (con linguaggio di riferimento C++) Gianfranco Rossi Università di Parma Dip. di Matematica e Informatica 43100 Parma (Italy) gianfranco.rossi@unipr.it Indice 1 Introduzione

Dettagli

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente

Dettagli

Octave. Luca Abeni. Informatica Luca Abeni 1 / 21

Octave. Luca Abeni. Informatica Luca Abeni 1 / 21 Luca Abeni Informatica Luca Abeni 1 / 21 Linguaggi di Programmazione di Alto Livello Parole chiave: possibilmente con significato in inglese Ma agli informatici piacciono molto contrazioni e acronimi...

Dettagli

Programmazione ad Oggetti. Java Parte II

Programmazione ad Oggetti. Java Parte II Programmazione ad Oggetti Java Parte II Overview Caratteristiche lessicali Il primo programma Java 1 Commenti /* Commento tradizionale, eventualmente su più linee, non nidificato */ // Commento su di una

Dettagli

Java: introduzione. /** * CiaoMondoApp.java * La solita classe banale. import java.lang.*; // predefinita. class CiaoMondoApp

Java: introduzione. /** * CiaoMondoApp.java * La solita classe banale. import java.lang.*; // predefinita. class CiaoMondoApp Java: introduzione Struttura fondamentale.................................. 1001 Commenti...........................................1002 Nomi ed estensioni................................... 1002 Istruzioni...........................................

Dettagli

Programmazione. Cognome... Nome... Matricola... Prova scritta del 11 luglio 2014

Programmazione. Cognome... Nome... Matricola... Prova scritta del 11 luglio 2014 Cognome................................ Nome................................... Matricola............................... Programmazione Prova scritta del 11 luglio 2014 TEMPO DISPONIBILE: 2 ore Negli esercizi

Dettagli

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 19 - Eccezioni 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

Dettagli

Java: introduzione. «Struttura fondamentale

Java: introduzione. «Struttura fondamentale Java: introduzione Struttura fondamentale.................................. 2300 a2» 2013.11.11 --- Copyright Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net Commenti...........................................2301

Dettagli

Introduzione alla programmazione con Java

Introduzione alla programmazione con Java Introduzione alla programmazione con Java Docente: Lucio Benussi Lingua del corso Italiano Descrizione del corso e obiettivi Il corso affronta lo studio di Java, linguaggio open source orientato agli oggetti

Dettagli

Strumenti per la programmazione

Strumenti per la programmazione Editing del programma Il programma deve essere memorizzato in uno o più files di testo editing codice sorgente 25 Traduzione del programma Compilazione: è la traduzione effettuata da un compilatore Un

Dettagli

Prima lezione di laboratorio. I mattoni di base di un programma Java. Comandi Unix. Riassunto. Oggi. Un programma complicato.

Prima lezione di laboratorio. I mattoni di base di un programma Java. Comandi Unix. Riassunto. Oggi. Un programma complicato. I mattoni di base di un programma Java Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@dimi.uniud.it Programmazione, lezione 2 1 ottobre

Dettagli

Il C nel C++ Struttura di un linguaggio. Elementi lessicali. Spazi. Livello lessicale: Livello sintattico: Livello semantico:

Il C nel C++ Struttura di un linguaggio. Elementi lessicali. Spazi. Livello lessicale: Livello sintattico: Livello semantico: Struttura di un linguaggio Il C nel C++ Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli

AMBIENTI DI PROGRAMMAZIONE

AMBIENTI DI PROGRAMMAZIONE AMBIENTI DI PROGRAMMAZIONE È l'insieme dei programmi che consentono la scrittura, la verifica e l'esecuzione di nuovi programmi (fasi di sviluppo) Sviluppo di un programma Affinché un programma scritto

Dettagli

I Fondamenti del Linguaggio

I Fondamenti del Linguaggio Linguaggio C I Fondamenti del Linguaggio Linguaggio di Programmazione Linguaggio formale per la descrizione di programmi per calcolatori Sintassi vicina al linguaggio umano Se non ci fossero, bisognerebbe

Dettagli

Le basi del linguaggio Java

Le basi del linguaggio Java Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 10 Le basi del linguaggio Java Aprile 2010 Le basi del linguaggio Java 1 Prerequisiti Nozioni generali sulla sintassi e semantica del

Dettagli

Agenda. Caratteristiche del linguaggio. Il primo programma java. Variabili. Tipi primitivi. Assegnamento

Agenda. Caratteristiche del linguaggio. Il primo programma java. Variabili. Tipi primitivi. Assegnamento Introduzione a Java Caratteristiche del linguaggio Il primo programma java Variabili Tipi primitivi Assegnamento Agenda Caratteristiche del linguaggio Introduzione al linguaggio Cos è Java? Java è un linguaggio

Dettagli

Programmazione in Java (I modulo) Lezione 4

Programmazione in Java (I modulo) Lezione 4 Programmazione in Java (I modulo) Lezione 4 Costanti Chiamiamo costanti tutti i valori numerici (interi o con la virgola), i caratteri e le stringhe. Esempio: 2, 3.7, 'y, buongiorno Le costanti numeriche

Dettagli

Introduzione alla programmazione con Java

Introduzione alla programmazione con Java Introduzione alla programmazione con Java Docente: Lucio Benussi Lingua del corso Italiano Descrizione del corso e obiettivi Il corso affronta lo studio di Java, linguaggio open source orientato agli oggetti

Dettagli

Indice. Prefazione. 3 Oggetti e Java 53

Indice. Prefazione. 3 Oggetti e Java 53 Prefazione xv 1 Architettura dei calcolatori 1 1.1 Calcolatori e applicazioni 1 1.1.1 Alcuni esempi di applicazioni 3 1.1.2 Applicazioni e interfacce 4 1.2 Architettura dei calcolatori 7 1.2.1 Hardware

Dettagli

Capitolo 5. Array e collezioni. c 2005 Pearson Education Italia Capitolo 5-1 / 61

Capitolo 5. Array e collezioni. c 2005 Pearson Education Italia Capitolo 5-1 / 61 Capitolo 5 Array e collezioni c 2005 Pearson Education Italia Capitolo 5-1 / 61 Sommario: Array e collezioni 1 Array Array di oggetti Lunghezza di un array Accesso agli elementi di un array Array e cicli

Dettagli

Linguaggi ad oggetti (object oriented) LINGUAGGI DI PROGRAMMAZIONE: PARADIGMI DI PROGRAMMAZIONE. Programmazione ad oggetti

Linguaggi ad oggetti (object oriented) LINGUAGGI DI PROGRAMMAZIONE: PARADIGMI DI PROGRAMMAZIONE. Programmazione ad oggetti LINGUAGGI DI PROGRAMMAZIONE: PARADIGMI DI PROGRAMMAZIONE Anno Accademico 2000-2001 Alberto Martelli Programmazione ad Oggetti Parte I Linguaggi ad oggetti (object oriented) I linguaggi di programmazione

Dettagli

Il C nel C++ Struttura di un linguaggio. regole per la definizione i simboli. regole per la composizione dei simboli

Il C nel C++ Struttura di un linguaggio. regole per la definizione i simboli. regole per la composizione dei simboli Il C nel C++ Struttura di un linguaggio Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli

Struttura di un linguaggio

Struttura di un linguaggio Il C nel C++ Struttura di un linguaggio Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli

Introduzione alla programmazione con Java

Introduzione alla programmazione con Java Introduzione alla programmazione con Java Docente: Lucio Benussi Lingua Italiano Descrizione e obiettivi Il corso affronta lo studio di Java, linguaggio open source orientato agli oggetti tra i più diffusi

Dettagli

Elementi di Informatica A. A. 2016/2017

Elementi di Informatica A. A. 2016/2017 Elementi di Informatica A. A. 2016/2017 Ing. Nicola Amatucci Università degli studi di Napoli Federico II Scuola Politecnica e Delle Scienze di Base nicola.amatucci@unina.it Programmazione C++ Parte 1

Dettagli

Oggetti e dati primitivi 1

Oggetti e dati primitivi 1 I membri delle classi Oggetti e dati primitivi Corso di laurea in Le classi contengono 2 tipi di membri, definiti per l intera classe o per le singole istanze Le variabili o i campi, che rappresentano

Dettagli

La Programmazione. Cos è la programmazione? Concetti preliminari

La Programmazione. Cos è la programmazione? Concetti preliminari La Programmazione Cos è la programmazione? Concetti preliminari 1 Sommario La programmazione, questa sconosciuta Programmiamo Macchine Astratte Linguaggi di basso e alto livello e loro implementazione

Dettagli

Programmare. Compilatori e interpreti. Editor :: vi. Hello1.c. #include <stdio.h> >> cc Hello1.c. main() { printf( \n Hello World!

Programmare. Compilatori e interpreti. Editor :: vi. Hello1.c. #include <stdio.h> >> cc Hello1.c. main() { printf( \n Hello World! Programmare Hello1.c #include printf( \n Hello World! \n ); >> cc Hello1.c >> a.out Hello World! >> Hello1.c = file sorgente per scriverlo occorre un editor cc = compilatore per altri linguaggi

Dettagli

Strumenti Java. Fondamenti di informatica L-B A.A Alessandra Toninelli

Strumenti Java. Fondamenti di informatica L-B A.A Alessandra Toninelli Strumenti Java Fondamenti di informatica L-B A.A. 2006-2007 Alessandra Toninelli atoninelli@deis.unibo.it Cosa installare? J2SE SDK Software Development Kit (JDK): Contiene: tutte le classi con relativo

Dettagli