Programmazione in rete e laboratorio a.a. 2002/03
|
|
- Ada Amore
- 4 anni fa
- Visualizzazioni
Transcript
1 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 in Java una applicazione distribuita A. Martelli - Introduzione a Java 2 Libri di testo: Cay S. Horstmann e Gary Cornell Java 2 - I fondamenti McGraw-Hill Cay S. Horstmann e Gary Cornell Java 2 - Tecniche avanzate McGraw-Hill Linguaggi ad oggetti (object oriented) I linguaggi di programmazione ad oggetti consentono di applicare metodologie di sviluppo di programmi "object oriented", ossia basate sugli oggetti (dati) che il sistema software manipola. Questa metodologia si contrappone a quella più tradizionale di sviluppare un programma secondo un approccio funzionale (programmazione strutturata). A. Martelli - Introduzione a Java 3 A. Martelli - Introduzione a Java 4 Astrazione Astrazione: identificare le proprietà importanti di un fenomeno, trascurando quelle irrilevanti. Un programma realizza delle astrazioni. E' essenziale concentrarsi solo sulle proprietà rilevanti del fenomeno che si vuole modellare. La mente umana può ricordare solo pochi concetti contemporaneamente. Lo sviluppo di un programma può procedere per livelli di raffinamento successivo delle astrazioni. Il ruolo dell'astrazione Un linguaggio di programmazione deve esser il più possibile svincolato dalla macchina su cui viene eseguito, ed essere vicino al problema da risolvere. Un linguaggio di programmazione deve fornire strumenti che facilitino lo sviluppo di astrazioni. In particolare: astrazioni sulle operazioni (procedure) astrazioni sui dati (moduli, tipi di dati astratti, classi) A. Martelli - Introduzione a Java 5 A. Martelli - Introduzione a Java 6
2 Programmazione ad oggetti I principali linguaggi ad oggetti In molti casi l'organizzazione ad oggetti risulta la più naturale perché rispecchia in modo diretto il mondo che si vuole rappresentare: - simulazione (automobili, semafori, aerei, ) - software grafico (finestre, bottoni, menu, ) Simula - progettato nel capostipite dei linguaggi ad oggetti Smalltalk - linguaggio ad oggetti "puro" - linguaggio "dinamico" non c'è controllo statico dei tipi Progetto object oriented di software: costruzione di sistemi software come collezioni strutturate di implementazioni di tipi di dati astratti (B. Meyer) C++ - linguaggio "ibrido" - garantisce la compatibilità con il C Java - il più recente. A. Martelli - Introduzione a Java 7 A. Martelli - Introduzione a Java 8 Java Le caratteristiche principali di Java Object oriented: progettato per essere un linguaggio ad oggetti, anche se meno puro di altri (Smalltalk) Robusto non ci sono puntatori garbage collection Distribuito costrutti per la concorrenza Java (cont.) Indipendente dall'architettura il compilatore genera codice intermedio (bytecode) che viene interpretato Applicazioni su internet applet - servlet sicurezza Ambiente ricco di tipi di dati predefiniti grafica programmazione su internet accesso a database.. A. Martelli - Introduzione a Java 9 A. Martelli - Introduzione a Java 10 Un primo programma Java: public class Esempio { public static void main(string[] args) // legge due numeri e ne stampa la somma { int num1 = Console.readInt(); int num2 = Console.readInt(); System.out.println(num1+num2); commento ignorato dal compilatore... int num2 = Console.readInt(); System.out.println(num1+num2);... Console e System sono delle classi: possono essere viste come delle librerie che forniscono delle operazioni predefinite. readint : legge un numero in input println : stampa in output Java ha una disposizione a formato libero: gli spazi e gli a capo non sono importanti per il compilatore. Java distingue fra lettere minuscole e maiuscole. Le operazioni nei linguaggi ad oggetti sono chiamate metodi. Corrispondono alle procedure o funzioni dei linguaggi tradizionali. A. Martelli - Introduzione a Java 11 A. Martelli - Introduzione a Java 12
3 Java API (Application Programming Interface) Java fornisce una grande quantità di librerie di classi predefinite, come ad esempio System. Esecuzione di programmi INTERPRETE La classe Console dell'esempio è definita da noi (in Java non ci sono operazioni predefinite per fare input di numeri). Per poter eseguire il programma dell'esempio questa classe deve essere inserita nella stessa cartella. Progr. sorgente LS Interprete LM LS = ling. sorgente LM = ling. macchina l'interprete esegue direttamente le operazione del progr. sorgente A. Martelli - Introduzione a Java 13 A. Martelli - Introduzione a Java 14 Esecuzione di programmi COMPILATORE (traduttore) Esecuzione di programmi SOLUZIONE MISTA Adottata da Java. Progr. sorgente LS Compilatore LM1 Progr. oggetto LM2 Il linguaggio intermedio si chiama bytecode. L'esecuzione mediante compilatore avviene in due fasi: traduzione da linguaggio sorgente a linguaggio macchina esecuzione del programma in linguaggio macchina Progr. sorgente Compilatore Programma Interprete in ling. intermedio JAVA LM1 bytecode LM2 A. Martelli - Introduzione a Java 15 A. Martelli - Introduzione a Java 16 Vantaggi Compilazione (Pascal, C, Ada, C++) Efficienza di esecuzione. Il codice generato dal compilatore può essere ottimizzato, perché la compilazione è fatta una sola volta. Interprete (JavaScript, Scheme, Prolog) Interazione. Più facile modificare un programma durante l'esecuzione. Soluzione mista (Java) Portabilità. Per eseguire un programma su macchine diverse è sufficiente implementare l'interprete del linguaggio intermedio, e non tutto il compilatore. Come si esegue il programma Il programma viene messo in un file Esempio.java. Il programma viene compilato con il comando: : javac Esempio.java Il compilatore crea un file in codice intermedio (bytecode) di nome Esempio.class Successivamente si chiama l'interprete: : java Esempio L'interprete carica il programma in memoria principale e comincia ad eseguire il main. A. Martelli - Introduzione a Java 17 A. Martelli - Introduzione a Java 18
4 Modifichiamo il programma precedente con System.out.println(num1/num2); L'operatore / rappresenta l'operazione di divisione intera: num1/num2 dà come risultato la parte intera della divisione fra num1 e num2. Ad esempio 7/4 dà 1. Se a num2 si assegna il valore 0, si commette un errore (divisione per zero). L'errore non può essere segnalato dal compilatore, ma verrà rilevato dall'interprete, che bloccherà l'esecuzione appena l'errore si verifica. Rilevazione degli errori A tempo di compilazione. Il compilatore è in grado di scoprire gli errori sintattici e altri tipi di errore: tipi, variabili non dichiarate,... In caso di errore il programma non viene compilato. Durante l'esecuzione (runtime). L'interprete può scoprire errori di esecuzione come la divisione per zero. In questo caso l'interprete solleva una eccezione e blocca l'esecuzione (Java è molto attento alla sicurezza dei programmi) A. Martelli - Introduzione a Java 19 A. Martelli - Introduzione a Java 20 Altri tipi di numeri Il valore preciso di 7/4 è 1.75 che non è un intero. Se vogliamo ottenere come risultato della divisione 1.75 dobbiamo usare un tipo diverso: il tipo double indica i numeri in virgola mobile (floating point), ossia numeri con parte decimale. { double num1 = Console.readDouble(); double num2 = Console.readDouble(); System.out.println(num1/num2);... System.out.println(7 / 4); System.out.println(7.0 / 4.0);... La prima println dà 1, mentre la seconda dà L'operatore / è overloaded (sovraccarico), ossia ha due significati diversi: se entrambi gli argomenti sono interi, esegue la divisione intera; se uno dei due è in virgola mobile, esegue la divisione reale. A. Martelli - Introduzione a Java 21 A. Martelli - Introduzione a Java 22 Esempio: abbiamo 8 penny (centesimi di dollaro), 4 dime (dieci centesimi) e 3 quarters (25 centesimi). Qual è il valore totale delle monete? { int pennies = 8; int dimes = 4; int quarters = 3; double total = pennies * dimes * quarters * 0.25; System.out.print("Valore totale = "); System.out.println(total); System.out.print("Valore totale = "); System.out.println(total); "Valore totale = " è una stringa (sequenza di caratteri) Si potrebbe anche scrivere System.out.println("Valore totale = " + total); Il valore di total viene trasformato in una stringa e concatenato con la stringa "Valore totale = " A. Martelli - Introduzione a Java 23 A. Martelli - Introduzione a Java 24
5 Tipi di dato primitivi Java fornisce diversi tipi semplici primitivi. A differenza di altri linguaggi, la dimensione dei tipi numerici è fissata per consentire la portabilità dei programmi. byte 8 bit short 16 bit int 32 bit long 64 bit float 32 bit double 64 bit char 16 bit (Unicode) boolean Normalmente in una assegnazione i tipi della parte sinistra e destra devono essere uguali, altrimenti il compilatore dà errore. char carattere; int dollars; double total; carattere = 'A'; total = carattere; // errore di tipo dollars = total; // errore di tipo Tuttavia il compilatore fa eccezione per alcune assegnazioni fra numeri di tipo diverso. Ad esempio total = dollars; è corretta. A. Martelli - Introduzione a Java 25 A. Martelli - Introduzione a Java 26 Il compilatore accetta tipi numerici diversi in una assegnazione se l'assegnazione non fa perdere informazione (ad es. da un intero ad un numero in virgola mobile). Il cast dollars = (int)total; scarta la parte frazionaria. Viceversa non accetta assegnazioni che farebbero perdere informazione (ad es. nel passare da virgola mobile a intero si dovrebbe arrotondare). In questi casi occorre fare una conversione esplicita, detta cast. dollars = (int)total; il cast scarta la parte frazionaria. Per arrotondare si può usare il metodo round della classe Math. dollars = (int)math.round(total); Il cast è comunque necessario perché il metodo round restituisce un long. A. Martelli - Introduzione a Java 27 A. Martelli - Introduzione a Java 28 Inizializzazione Le variabili non vengono inizializzate per default. Se un variabile non è inizializzata prima di essere usata, il compilatore dà errore.... int i; i = i + 5;... errore!! Il programma non viene compilato. La parola chiave final designa una costante { final double pennies = 0.01; final double dimes = 0.1; final double quarters = 0.25;... Se una variabile è final, è possibile assegnarle un valore una sola volta. A. Martelli - Introduzione a Java 29 A. Martelli - Introduzione a Java 30
6 BLOCCHI { int n; int k;... ISTRUZIONI DECISIONI Nel programma che fa la divisione di due interi, vogliamo evitare l'errore di divisione per zero. Modifichiamo il programma in modo che, se num2 è zero, si chiede di fornire un altro valore. { int num1 = Console.readInt(); int num2 = Console.readInt(); I blocchi definiscono lo scope delle variabili. Non è possibile dichiarare variabili con lo stesso nome in blocchi annidati. Le dichiarazioni possono essere collocate in qualunque punto. if (num2 == 0) { System.out.println("il numero deve essere diverso da zero"); num2 = Console.readInt(); System.out.println(num1/num2); A. Martelli - Introduzione a Java 31 A. Martelli - Introduzione a Java 32 L'operatore == rappresenta l'uguaglianza. SI System.out.println(...); num2 = Console.readInt(); num2 == 0 NO Vogliamo stampare il massimo fra num1 e num2. { int num1 = Console.readInt(); int num2 = Console.readInt(); if (num1 > num2) { System.out.println("il massimo è " + num1); else { System.out.println("il massimo è " + num2); A. Martelli - Introduzione a Java 33 A. Martelli - Introduzione a Java 34 Le parentesi graffe racchiudono una sequenza di istruzioni. Se c'è un'istruzione sola, si possono omettere. istruzione1 condizione istruzione2 Per confrontare due numeri si possono usare gli operatori > >= < <= ==!= (diverso) A. Martelli - Introduzione a Java 35 A. Martelli - Introduzione a Java 36
7 Espressioni booleane Nelle condizioni di un if si possono usare operatori booleani: && and or! not if (1 <= num && num <= 5)... Una espressione booleana avrà valore true o false. A. Martelli - Introduzione a Java 37 ITERAZIONI Quanti anni ci vogliono per raddoppiare il capitale con un interesse del 5%? { double rate = 5; double initialbalance = 1000; int year = 0; double balance = initialbalance; while (balance < 2 * initialbalance) { year++; double interest = balance * rate / 100; balance = balance + interest; System.out.println("L'investimento si raddoppia dopo " + year + " anni."); A. Martelli - Introduzione a Java 38 Spesso i cicli hanno la forma while (condizione) istruzione condizione SI NO i = inizio; while (i <= fine) {... i++; In questi casi si può usare una istruzione for istruzione for (i = inizio; i <= fine; i++) {... A. Martelli - Introduzione a Java 39 A. Martelli - Introduzione a Java 40 Di quanto aumento un capitale in 20 anni con un dato tasso di interesse? { double rate = 5; final double INITIAL_BALANCE = 10000; final int NYEARS = 20; double balance = INITIAL_BALANCE; Istruzione for for (inizializzazione; condizione; aggiornamento) istruzione Esiste anche un while con il test alla fine for (int year = 1; year <= NYEARS; year++) { double interest = balance * rate / 100; balance = balance + interest; System.out.println("saldo finale: " + balance); do istruzione while (condizione); A. Martelli - Introduzione a Java 41 A. Martelli - Introduzione a Java 42
8 Altre istruzioni switch - per gestire condizioni con molte alternative break - per uscire da un loop break etichettato - per uscire da più loop annidati (In Java non c'è goto) A. Martelli - Introduzione a Java 43
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
DettagliLinguaggi 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
DettagliIL 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
DettagliIL 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
DettagliIL 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
DettagliINTRODUZIONE 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
DettagliINTRODUZIONE 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
DettagliIL 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
DettagliLinguaggi 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
DettagliLe 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
Dettagli3) 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
DettagliEsonero 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
DettagliIntroduzione 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
DettagliLezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
DettagliGli 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
DettagliIntroduzione. 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
DettagliCast 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
DettagliProgrammazione 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
DettagliCorso: Fondamenti di Informatica 1 (gruppo 8-9) Corsi di laurea: Area dell'informazione Simulazione del Questionario a Risposte Multiple.
Domanda n. 1 Corso: Fondamenti di Informatica 1 (gruppo 8-9) Corsi di laurea: Area dell'informazione Simulazione del Questionario a Risposte Multiple 8-Nov-2004 Argomento: Rappresentazione dell'informazione
DettagliProgrammazione 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
DettagliIntroduzione 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
Dettagli6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
6 - Blocchi e cicli Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://pages.di.unipi.it/milazzo milazzo di.unipi.it
DettagliUniversità 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
DettagliLe 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
DettagliCorso sul linguaggio Java
Corso sul linguaggio Java Modulo JAVA1 1.1 Programmazione base 1 Prerequisiti Saper scrivere algoritmi elementari Tecniche elementari di sviluppo di una applicazione Modalità a riga di comando Utilizzo
DettagliProgrammazione 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
DettagliConcetti base programmazione. Antonio Gallo
Concetti base programmazione Antonio Gallo info@laboratoriolibero.com Programma Insieme di istruzioni: Strtturato Ad oggetti Strutturato Ha una struttura più lineare Basato sui concetti di sequenza, selezione,
DettagliDati 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
DettagliProgrammazione in Java (I modulo)
Programmazione in Java (I modulo) Lezione 4 Variabili di tipo primitivo. Dichiarazione di costanti Conversioni di tipo: operatore cast Altri operatori di assegnamento Operazioni aritmetiche e di confronto
DettagliFondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java
Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java AA 2018/2019 Tutor Lorenzo Rosa lorenzo.rosa@unibo.it 2 Programma Introduzione al calcolatore e Java Linguaggio Java, basi e
DettagliI/O da tastiera + Alessandra Giordani Lunedì 2 maggio
I/O da tastiera + costrutti while e if Alessandra Giordani agiordani@disi.unitn.it Lunedì 2 maggio 2011 http://disi.unitn.it/~agiordani/ Ripasso funzione printf() Usata per stampare il contenuto di una
DettagliINSTALLAZIONE, 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
DettagliScelte. Costrutto condizionale. Il costrutto if. Il costrutto if. Rappresentazione con diagramma a blocchi. Il costrutto if
Scelte Costrutto condizionale Scelte, blocchi Fino ad ora il corpo dei metodi che abbiamo scritto aveva solo un modo di essere eseguito: in sequenza dalla prima istruzione all ultima In applicazioni non
DettagliMarco 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
DettagliJava SE 7. Strutture di programmazione (2)
Java SE 7 Strutture di programmazione (2) diegozabot@yahoo.it ursula.castaldo@gmail.com Casting (1) E' l'operazione che realizza la conversione di tipo tra oggetti e tra tipi primitivi. E' un'operazione
Dettagli5 - Istruzioni condizionali
5 - Istruzioni condizionali 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
DettagliLinguaggi di Programmazione I Lezione 9
Linguaggi di Programmazione I Lezione 9 Prof. Marcello Sette mailto://marcello.sette@gmail.com http://sette.dnsalias.org 6 maggio 28 Variabili 3 Ambiti................................................................
DettagliJava e i Tipi di dati primitivi. Parte 3
Java e i Tipi di dati primitivi Parte 3 La nozione di tipo di dato Il tipo del dato consente di esprimere la natura del dato Indica il modo con cui verrà interpretata la sequenza di bit che rappresenta
DettagliA. 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
DettagliProf. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C
Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C IL LINGUAGGIO C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede tutti i costrutti di controllo dei linguaggi
DettagliLinguaggi di Programmazione I Lezione 8
Linguaggi di Programmazione I Lezione 8 Prof. Marcello Sette mailto://marcello.sette@gmail.com http://sette.dnsalias.org 29 aprile 2008 Identificatori e parole chiavi 3 Commenti.............................................................
DettagliElementi 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
DettagliIntroduzione. 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
DettagliAlgebra 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
DettagliLaboratorio di Informatica I
Struttura della lezione Lezione 3: Istruzioni ed operatori booleani. Vittorio Scarano Corso di Laurea in Informatica Università di Salerno Soluzioni agli esercizi Istruzioni (statement) semplici e di controllo
DettagliLinguaggio 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
DettagliCostrutto switch. Come utilizzare il costrutto switch
Costrutto switch Come utilizzare il costrutto switch Costrutto switch (1/4) Il costrutto if-else permette di selezionare le istruzioni da eseguire tra due alternative, a seconda del valore di una condizione
DettagliLe classi in java. Un semplice programma java, formato da una sola classe, assume la seguente struttura:
Le classi in java Un semplice programma java, formato da una sola classe, assume la seguente struttura: class Domanda static void main(string args[]) System.out.println( Quanti anni hai? ); La classe dichiarata
DettagliCorso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona
Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario tipi di dati condizioni cicli cicli annidati per alcuni tipi di dati Java mette a disposizione una rappresentazione
DettagliOggi. La programmazione strutturata - III. Sequenza e selezione. Dove siamo. Iterazione: while e do/while. Raffinamenti successivi.
La programmazione strutturata - Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@dimi.uniud.it Programmazione, lezione 6 Oggi Stefano
Dettagli! Riassunto. ! for. ! Cicli annidati. ! Esempi, esercizi, errori tipici. ! Programmazione strutturata. ! break e continue I1; I2; I3;
La programmazione strutturata - Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 6 Oggi Stefano Mizzaro
DettagliModulo 2: Strutture fondamentali della programmazione Java
Modulo 2: Strutture fondamentali della programmazione Java Argomenti Trattati: Un semplice programma Java: Presentazione di un primo Esempio; Introduzione alla struttura; Compilazione ed esecuzione. Argomenti
DettagliIndice. 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
DettagliEspressioni. Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica!
Espressioni Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica! Valutazione automatica di expr aritmetiche = obiettivo primario dei primi LP
DettagliIntroduzione alla programmazione
Introduzione alla programmazione Cosa è un calcolatore? Hardware Processore Memoria Periferiche Funzionamento Esegue istruzioni elementari Esegue istruzioni molto velocemente Deve essere programmato Il
DettagliCorso di Laurea Ingegneria Civile Fondamenti di Informatica. Dispensa 07. Oggetti e Java. Marzo Programmazione Java 1
Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 07 Oggetti e Java Marzo 2010 Programmazione Java 1 Contenuti Il linguaggio Java Applicazioni Java e il metodo main Esempi di applicazioni
DettagliPrimo programma in C
Primo programma in C Struttura minima di un file C Applicazioni C in modo console Struttura del programma Commenti Direttive #include Definizione di variabili Corpo del main 2 Struttura minima di un file
DettagliIl 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
DettagliIl 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
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliIntroduzione alla programmazione in linguaggio C
Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008
DettagliAMBIENTI 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
DettagliLaboratorio di Informatica I
Struttura della lezione Lezione 7: Istruzioni ed Operatori Booleani Vittorio Scarano Corso di Laurea in Informatica Soluzioni agli esercizi Istruzioni (statement) semplici e di controllo Operatori relazionali
DettagliLaboratorio di Programmazione Lezione 2. Cristian Del Fabbro
Laboratorio di Programmazione Lezione 2 Cristian Del Fabbro Prossima lezione GIOVEDÌ 29 OTTOBRE 14:00 Input da tastiera package input; import java.io.*; public class Input { public static void main(string[]
DettagliMacchine astratte, linguaggi, interpretazione, compilazione
Macchine astratte, linguaggi, interpretazione, compilazione 1 Macchine astratte una collezione di strutture dati ed algoritmi in grado di memorizzare ed eseguire programmi componenti della macchina astratta
DettagliInformatica 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)
DettagliPREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii
Sommario PREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 1.1 Introduzione...
DettagliOCA 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
DettagliCominciamo ad analizzare la rappresentazione delle informazioni... di Cassino. C. De Stefano Corso di Fondamenti di Informatica Università degli Studi
Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono l algoritmo Cominciamo ad analizzare la
Dettagli9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
9 - Array 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
DettagliProgrammazione 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
DettagliIl 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
DettagliStruttura 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
DettagliIl 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
DettagliOCA 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
DettagliQualsiasi programma in C++ segue lo schema:
Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni
DettagliLa 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
DettagliProgramma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
DettagliUtilizza i tipi di dati comuni a tutto il framework.net Accesso nativo ai tipi.net (C# è nato con.net) Concetti fondamentali:
1 Tipi di dati 1 Tipi di dati Utilizza i tipi di dati comuni a tutto il framework.net Accesso nativo ai tipi.net (C# è nato con.net) Concetti fondamentali: Tutto è un oggetto Tutto eredita implicitamente
DettagliIntroduzione alla programmazione. Alice Pavarani
Introduzione alla programmazione Alice Pavarani Il linguaggio C Creato da Dennis Ritchie nel 1972 presso i Bell Laboratories Linguaggio di programmazione procedurale, strutturato Linguaggio ad alto livello
DettagliTipi di dati scalari (casting e puntatori) Alessandra Giordani Lunedì 10 maggio 2010
Tipi di dati scalari (casting e puntatori) Alessandra Giordani agiordani@disi.unitn.it Lunedì 10 maggio 2010 http://disi.unitn.it/~agiordani/ I tipi di dati scalari I tipi aritmetici, i tipi enumerativi
DettagliSintassi Java PA RTE 1 FONDAMEN TI DI I N FORMAT ICA PER IL CORSO DI LAUREA I N M AT EMAT ICA PA O L A L E C C A
Sintassi Java PA RTE 1 FONDAMEN TI DI I N FORMAT ICA PER IL CORSO DI LAUREA I N M AT EMAT ICA PA O L A L E C C A D I PA R T I M E N T O D I M AT E M AT I C A, U N I V E R S I TÀ D I T R E N TO paola.lecca@unitn.it
DettagliProgrammazione 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
DettagliImpariamo a programmare in. Lezione 6
Impariamo a programmare in Decisioni Gestire un conto corrente double balance = 10000; // saldo iniziale System.out.println("Quanto vuoi prelevare? ); double amount = console.nextdouble(); balance = balance
Dettagli4 - Tipi di dato primitivi
4 - Tipi di dato primitivi 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
DettagliCorso: Fondamenti di Informatica (Gruppo 2) a.a Corsi di laurea: Ing. Settore Informazione
Corso: Fondamenti di Informatica (Gruppo 2) a.a. 2017-18 Corsi di laurea: Ing. Settore Informazione Questionario a Risposte Multiple per auto-valutazione del Lab05 Domanda n. 1 Argomento: Iterazioni, array
DettagliProgrammazione II. Lezione 6. Daniele Sgandurra 5/11/2010.
Programmazione II Lezione 6 Daniele Sgandurra daniele.sgandurra@iit.cnr.it 5/11/2010 1/54 Programmazione II Lezione 6 5/11/2010 Sommario 1 Nomi e Ambiente Ambiente 2 Esercizi 3 Esercitazione: Eclipse Eclipse
DettagliJava: 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
DettagliAMBIENTI 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
DettagliLezione 1. Ing. Colazzo Sebastiano
Lezione 1 Ing. Colazzo Sebastiano Linguaggi macchina: lingua naturale di un particolare computer, esso consiste di sequenze di numeri (1 o 0) e dipende dalla macchina 0000111101 1111110001 0011001111 Linguaggi
DettagliIntroduzione al linguaggio C Primi programmi
Introduzione al linguaggio C Primi programmi Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica
DettagliNuovi tipi di dato e. Alessandra Giordani Lunedì 26 marzo
Nuovi tipi di dato e costrutto condizionale Alessandra Giordani agiordani@disi.unitn.it Lunedì 26 marzo 2012 http://disi.unitn.it/~agiordani/ Tipi di dato fondamentali int e il tipo di dato che consente
Dettagli