minicorso tematico: elementi di programmazione: con java dal computer, al web, al cellulare dott....
TRANSCRIPT
![Page 1: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/1.jpg)
Minicorso tematico:
“Elementi di Programmazione: con Java dal Computer,
al Web, al Cellulare”
Dott. Francesco Ricca
Dipartimento Di MatematicaUniversità della Calabria
![Page 2: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/2.jpg)
Presentiamoci
Mi chiamo Francesco Ricca
Ricercatore presso il Dip. Di Matematica
Mi occupo di: Intelligenza Artificiale Programmazione Logica
Insegno: Introduzione all’Informatica Ingegneria del SoftwareProgrammazione ad Oggetti
![Page 3: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/3.jpg)
Programma del Corso
Introduzione all’Informatica
Problemi, Algoritmi e Programmi
Fondamenti di Programmazione… con il linguaggio Java
Siti dinamici con Java
J2ME: Java per i cellulari
![Page 4: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/4.jpg)
Materiale Didattico
Lucidi delle Lezioni
Guide rapide http://www.html.it http://java.sun.com
Libri L. Nigro, “Introduzione alla programmazione orientata
agli oggetti in Java”, Edizioni Luim L.Cabibbo, “Fondamenti di Informatica: Oggetti e
Java”, McGraw-Hill C.S. Horstmann – G. Cornell, “Core Java 2”, Prentice
Hall
![Page 5: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/5.jpg)
Orario ed Esame
Esame Finale giorno 9 Maggio:FacoltativoChi lo supera consegue un attestato per riscattare
1CFUL’attestato di frequenza valido per l’esame di stato
non è connesso all’esame
![Page 6: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/6.jpg)
Introduzione All’Informatica
Nozioni di base
![Page 7: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/7.jpg)
Cosa è l’Informatica?
Scienza degli elaboratori elettronici Computer Science
Scienza dell’informazionerappresentazionememorizzazioneelaborazione e trasmissione dell’informazione
Parente stretta della Matematica2 anime: teorica, tecnico-pratica
![Page 8: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/8.jpg)
Il Computer
Elaboratore elettronico (o “calcolatore”)
E’ uno strumento per la rappresentazione, la memorizzazione e l’elaborazione delle informazioni.
E’ programmabile: può essere predisposto per eseguire un particolare insieme di azioni, allo scopo di risolvere un problema.
![Page 9: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/9.jpg)
Cosa possiamo fare con un calcolatore?
![Page 10: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/10.jpg)
Cosa possiamo fare con un calcolatore?
![Page 11: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/11.jpg)
Utilizzo di un elaboratore
Come utente:Uso software applicativo esistente per
creare documenti e interfacce grafiche, effettuare calcoli, navigare in rete
Come sviluppatore:Creo nuovi programmi sullo strato del
software esistenteNuovi programmi applicativiNuovi programmi di sistema (cioè che fanno
funzionare il calcolatore)
![Page 12: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/12.jpg)
Cosa possiamo fare con un calcolatore?
Word Processing. Memorizzare, elaborare testi.
Basi di Dati. Memorizzare grossi archivi di dati, recupero veloce, produrre informazioni globali.
Accesso Remoto. Trasmissione e recupero di informazioni.
Calcolo. Risolvere problemi matematici.
Simulazioni. Rappresentare e elaborare informazioni che simulano l’ambiente reale.
![Page 13: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/13.jpg)
Parole chiave:
Hardware
Software
![Page 14: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/14.jpg)
Hardware
Contenitore conCPU, RAMMemoria Centrale
Fisso Unità per Dischi - CD/DVD
Monitor
Tastiera
Ecc.
![Page 15: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/15.jpg)
Hardware
Unità di Elaborazione (Processore o CPU):Svolge le elaborazioniCoordina il trasferimento dei datiCioè ‘esegue’ i programmi
Memoria Centrale Memorizza dati e programmi per l’elaborazioneVolatileAccesso rapidoCapacità limitata
![Page 16: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/16.jpg)
Hardware
Memoria Secondaria (es. Harddisk,floppy)Grande capacitàPersistenteAccesso piu lento della RAM
Unità Periferiche Interfaccia verso l’esternoTerminali (tastiera, video)Stampanti
![Page 17: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/17.jpg)
Software
Software di base: Dedicato alla gestione dell’elaboratore Esempio: Sistema Operativo (Windows, Linux,
etc)
Software applicativo:Dedicato alla realizzazione di specifiche
applicativeEsempio: programmi per scrittura, gestione
aziendale, navigazione su internet, ecc
![Page 18: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/18.jpg)
Problemi, Algoritmi e Programmi
I concetti fondamentali dell’Informatica
![Page 19: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/19.jpg)
Il problema
Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia
Problema Strategia Obiettivo
![Page 20: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/20.jpg)
Esempi di problemi
Trovare il numero di telefono di una persona
Individuare il numero più piccolo di una sequenza
Stabilire se una parola precede alfabeticamente un’altra
Calcolare il costo totale di un certo numero di prodotti
Trovare perimetro e area di una figura geometria
…
![Page 21: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/21.jpg)
Risolvere un problema
Come si costruisce la soluzione a un problema?
Qual è il giusto “punto di partenza” per pensare la soluzione a un problema?
Quali metodologie e tecniche usare?
![Page 22: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/22.jpg)
Risolvere un problema
Problema
Interpretazione
Modello Procedimento risolutivo
Esecuzione
Verifica dei risultati
![Page 23: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/23.jpg)
Algoritmo
Un algoritmo è una sequenza finita di operazioni elementari che porta alla risoluzione in un tempo finito una classe di problemi.
In generale un algoritmo può essere visto come una funzione da un dominio d’ingresso ad uno d’uscita
AlgoritmoDati(INPUT)
X
Risultati(OUTPUT)
f(X)
![Page 24: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/24.jpg)
Algoritmi: proprietà fondamentali
Eseguibilità: ogni azione deve essere eseguibile da parte dell’esecutore dell’algoritmo in un tempo finito
Non-ambiguità: ogni azione deve essere univocamente interpretabile dall'esecutore
Finitezza: il numero totale di azioni da eseguire, per ogni insieme di dati di ingresso, deve essere finito.
![Page 25: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/25.jpg)
Algoritmi equivalenti
forniscono lo stesso risultato
ma possono avere diversa efficienza
e possono essere profondamente diversi !
Esempio: moltiplicare tra loro due numeri
Algoritmo 1: Somme successive:12x12 = 12+12+…+12=144
Algoritmo 212x12=24
12= 144
![Page 26: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/26.jpg)
Esecuzione
![Page 27: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/27.jpg)
Algoritmi e programmi
Algoritmo Sequenza finita di passi che risolve in tempo finito un
problema.
Codifica Fase di scrittura di un algoritmo in un qualche
linguaggio di programmazione, che specificano le azioni da compiere.
Programma Testo scritto in accordo con la sintassi e la semantica di
un linguaggio di programmazione.PROBLEMA ALGORITMO PROGRAMMA
![Page 28: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/28.jpg)
Linguaggi di Programmazione
Linguaggi per esprimere in maniera rigorosa un algoritmo
Linguaggio macchina (seq. Istruzioni)
Linguaggi ad alto livello (vicini al ling. naturale)Pascal, C e C++, Basic, Cobol
Java
![Page 29: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/29.jpg)
Esempio: potenza
Problema: Calcolare an
Algoritmo:
Fino a che N>0
Calcola Ris*a e memorizzalo in Ris
Decrementa N
Nota che:Al termine Ris=an
![Page 30: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/30.jpg)
Esempio …in Java
int potenza(int a, int n)
{ int ris = 1;
while ( n > 0 ) {
ris = ris * a; n = n-1;
}
return ris;
}
![Page 31: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/31.jpg)
Riassumendo…
Un algoritmo è il processo risolutivo di un problema
Ogni elaboratore è una macchina in grado di eseguire azioni elementari su dati dette istruzioni
Le istruzioni sono espresse attraverso frasi di un opportuno linguaggio di programmazione
Un programma è la formulazione testuale di un algoritmo in un linguaggio di programmazione
![Page 32: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/32.jpg)
Esistono problemi che un elaboratore non può risolvere?
Sì. Ci sono problemi non calcolabili da nessun modello di calcolo reale o astratto
Esempio: data una funzione f : N N, stabilire se f(x) è costante per ogni valore di x
![Page 33: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/33.jpg)
Fondamenti di Programmazione
…con Java
![Page 34: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/34.jpg)
Linguaggi di Programmazione
Linguaggi per esprimere in maniera rigorosa un algoritmo
La “lingua del Computer”
Diversi tipi di linguaggi:ImperativiDichiarativiAd Oggetti
![Page 35: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/35.jpg)
Linguaggi Imperativi
“Comandano” il computer indicando le azioni da compiere
Si specificano le azioni da fare per ottenere il risultato
Algoritmo = “insieme di operazioni da compiere sui dati”
Algoritmo = DATI + Controllo
![Page 36: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/36.jpg)
Linguaggi Dichiarativi
“Chiedono” al computer di trovare una soluzione
Si specifica quello che si vuole e non come deve essere calcolato
Linguaggi Funzionali: Lisp
Linguaggi Logici: Prolog
Questo è stato espresso da Robert Kowalski con la formula:
Algoritmo = Logica + Controllo
![Page 37: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/37.jpg)
Linguaggi ad Oggetti
Sono basati sul concetto di oggetto software
Un oggetto software rappresenta un oggetto del mondo reale
un numero, un archivio, un testo, una matrice, una persona...
I dati sono rappresentati come oggetti
Le azioni da compiere come operazioni da effettuare sugli oggetti.
Di solito sono realizzati come estensione dei linguaggi imperativi.
Un programma modella un problema reale come una collezione di oggetti software che interagiscono.
![Page 38: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/38.jpg)
Ma è davvero questa la lingua del computer?
Questi sono linguaggi ad alto livello Più simili al nostro modo di esprimerci
Il computer “conosce” solo i bit e le operazioni elementari su questi (linguaggio a basso livello)
C’è bisogno di un traduttore!!!
Il Compilatore traduce un programma scritto in un linguaggio di programmazione ad alto livello in bit e operazioni elementari
Si trovano negli ambienti di sviluppo: e.s. JDK e/o Eclipse
![Page 39: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/39.jpg)
Dal programma all’esecuzione…
Scrivo il programma
In JAVA
Il compilator
e lo traduce
Il Computer lo ESEGUE
Se è scritto male, saranno segnalati gli errori(attenti, è molto pignolo!)
![Page 40: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/40.jpg)
Concetti di base della POO
POO = Programmazione Orientata agli Oggetti
![Page 41: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/41.jpg)
Il concetto di Classe
Una classe è un insieme di oggetti che hanno le stesse caratteristiche e lo stesso comportamento
Definire una classe =Elencarne le caratteristiche (~ definire i dati)Specificarne il comportamento (~ definire le
operazioni)
Una classe definisce il “progetto” di un oggetto software
Quando un oggetto software appartiene ad una classe ha tutte le caratteristiche ed il comportamento specificate per questa.
![Page 42: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/42.jpg)
Esempio: la classe dei libri
Ogni libro ha:un titoloun numero di pagineun elenco numerato di pagine…
Su ogni libro possiamo operare Leggiamo il titolo Vediamo quante pagine ha Cerchiamo una pagina Stampiamo una pagina o tutto il libro …
Comportamento: Operazioni o
Metodi
Caratteristiche:Dati
Un’altra classe!!!
![Page 43: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/43.jpg)
La visibilità
Un po di “privacy”Non tutti possono vedere tutte le caratteristiche di
un oggetto: Information Hiding Il mago Silvan non rivela a tutti il trucco con cui ha
fatto comparire un coniglio o sparire l’assistenteMostrereste dove si trova la cassaforte a casa
vostra?Dareste a tutti il PIN del vostro cellulare?
Tre parole chiave per proteggere o meno le caratteristiche e i metodi di una classe:public, private, protected
![Page 44: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/44.jpg)
La classe libro in Java
class Libro {
// Caratteristiche
private Titolo nomeLibro;
private Numero numeroDiPagine;
private Lista<Pagine> pagine;
// Metodi
public Titolo dammiTitolo();
public Numero dammiNumeroDiPagine();
…
}
class Libro {
// Caratteristiche
private Titolo nomeLibro;
private Numero numeroDiPagine;
private Lista<Pagine> pagine;
// Metodi
public Titolo dammiTitolo();
public Numero dammiNumeroDiPagine();
…
}
Indichiamo la classe ed il nome della
proprietà
Indichiamo il nome del
metodo e il tipo di oggetti che
calcola
Diamo il nome
![Page 45: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/45.jpg)
Il concetto di variabile
Come manipoliamo un oggetto software?Gli oggetti software “vivono” nella memoria del
computer
Abbiamo bisogno di nomi che riferiscono direttamente gli oggetti per “manipolarli”
Es. somma 3 al numero X X = X + 3X è una variabile, che consente di manipolare un
certo tipo di oggetti (in questo caso dei numeri)
Le variabili associano nome e tipo ad un oggetto nella memoria
![Page 46: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/46.jpg)
Manipolazione di oggetti
Se vogliamo ottenere il titolo di un libro dobbiamo chiamare il metodo dammiTitolo()
Supponiamo che la variabile l riferisca un libro
Titolo t = l.dammiLibro();Si usa la notazione col punto (dot notation)
VARIABILE . PROPRIETÀ
VARIABILE . METODO( PARAMETRI )
Pagina p = l.dammiPagina( 33 );
![Page 47: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/47.jpg)
Il mio primo programma
Stampiamo “ciao” sullo schermo.
class StampaCiao {
public static void main(String args []) {
System.out.println(“Ciao”);
}
}
Il sistema si aspetta un metodo così
fatto:Main = Principale
Oggetto sistema
Ha la proprietà
out che è lo schermo
Chiamiamo il metodo
Println = stampa linea
![Page 48: Minicorso tematico: Elementi di Programmazione: con Java dal Computer, al Web, al Cellulare Dott. Francesco Ricca Dipartimento Di Matematica Università](https://reader035.vdocuments.pub/reader035/viewer/2022062701/5542eb59497959361e8c5f3b/html5/thumbnails/48.jpg)
Scriviamo davvero i ProgrammiL’ambiente di sviluppo Eclipse
Tanti, tanti esempi