La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Oggetti Definiti dall’Utente Roberto Bruni e Daniela Giorgetti.

Presentazioni simili


Presentazione sul tema: "Oggetti Definiti dall’Utente Roberto Bruni e Daniela Giorgetti."— Transcript della presentazione:

1 Oggetti Definiti dall’Utente Roberto Bruni e Daniela Giorgetti

2 Bruni e Giorgetti2 Creare oggetti su misura bisogna dare il costruttore speciale funzione JS definisce l’aspetto dell’oggetto per creare oggetti bisogna istanziare il costruttore con new

3 Bruni e Giorgetti3 Generico costruttore function tipooggetto (parametro 1,…,parametro n ) { this.proprietà 1 = parametro 1 ; … this.proprietà n = parametro n ; this.metodo 1 = funzione 1 ; … this.metodo m = funzione m ; } function funzione i (arg 1,…,arg k ) { corpo }

4 Bruni e Giorgetti4 Chiarimenti e consigli Le proprietà diventano i parametri del costruttore I metodi vengono implementati esternamente solitamente i parametri hanno gli stessi nomi delle proprietà solitamente le funzioni hanno lo stesso nome dei metodi (alcuni autori preferiscono prefissarle con il nome dell’oggetto che implementano) L’istanziazione crea un nuovo oggetto istanza = new tipooggetto(par 1,…,par n );

5 Bruni e Giorgetti5 Esempio: Libro I tipo oggetto Libro : function Libro (titolo,autore,ISBN,voto) { this.titolo = titolo; this.autore = autore; this.ISBN = ISBN; this.voto = voto; this.show = show; //metodo! }

6 Bruni e Giorgetti6 EsempioEsempio: Libro II bisogna implementare il metodo: function show () { finestra = window.open(“”, “”, “resizable=1,width=300, height=300”); finestra.document.write(“ ”); finestra.document.write(“ Descrizione ”); finestra.document.write(“ ”); finestra.document.write(this.titolo.bold()); finestra.document.write(this.autore.italics()); finestra.document.write(“ISBN: “+this.ISBN); finestra.document.write(“ ”); finestra.document.close() }

7 Bruni e Giorgetti7 Lavorare con gli oggetti Definire il tipo oggetto Creare le istanze (mancanza di persistenza) Offrire all’utente la possibilità di accedere agli oggetti (es. tramite interfaccia) selezionarli usarne i metodi lavorare con le loro proprietà

8 Bruni e Giorgetti8 Estendiamo il tipo con la possibilità di modificare il voto Creiamo un archivio con 5 libri Diamo all’utente la possibilità di selezionare un libro che gli interessa per –modificare il voto –visualizzare la scheda relativa Esempio

9 Bruni e Giorgetti9 LibroLibro: aggiunta di un metodo function Libro (titolo,autore,ISBN,voto) { this.titolo = titolo; this.autore = autore; this.ISBN = ISBN; this.voto = voto; this.show = show; //metodo! this.giudica = giudica; //metodo! } function giudica (valore) { this.voto = valore }

10 Bruni e Giorgetti10 LibroLibro: creazione istanze

11 Bruni e Giorgetti11 LibroLibro: la form I Scegli il libro: Bar Sport Bar Sport Duemila L'Ultima Lacrima Il Bar sotto il Mare La Compagnia dei Celestini

12 Bruni e Giorgetti12 LibroLibro: la form I … e Votalo:

13 Bruni e Giorgetti13 LibroLibro: assegna voto

14 Bruni e Giorgetti14 LibroLibro: mostra scheda

15 Bruni e Giorgetti15 Oggetti più complessi Le possibilità sono praticamente infinite Possiamo annidare le definizioni creando oggetti complessi le proprietà sono ancora oggetti Questa è la base dei documenti HTML e della loro gestione con JS

16 Bruni e Giorgetti16 Dinamicità? Usando gli array è possibile raccogliere e creare nuovi oggetti sulla base di dati forniti in input dall’utente (es. usando form) (problema della non persistenza) possiamo aggiungere liberamente proprietà e metodi singolarmente alle istanze (es. bar_sport.letto = true ) ai tipi oggetto se supportano prototype (JS1.1+)

17 Bruni e Giorgetti17 Esercizi


Scaricare ppt "Oggetti Definiti dall’Utente Roberto Bruni e Daniela Giorgetti."

Presentazioni simili


Annunci Google