martedì 27 agosto 2013

Appello del 19 settembre, aula I NEC, ore 14

L'appello scritto di settembre avrà luogo giovedì 19 in aula I NEC alle ore 14. La prenotazione è obbligatoria al solito modulo (è necessario essere loggati al gruppo).

venerdì 31 maggio 2013

Lezione 31/5/2013: sigleton e decorator; conclusione del corso

Permettere una singola istanza per una classe: il Singleton Pattern. L'esempio di Paperino e della rete semantica. Il Decorator Pattern: aggiungere responsabilità a una classe senza che essa lo sappia. L'esempio della rappresentazione grafica delle automobili. Conclusione del corso!

APPELLO EXTRA DI LUGLIO!!!
  • scritto: giovedì 25 luglio, aula V MAT ore 9
  • consegna progetto: 24 luglio, entro le ore 22 all'indirizzo email: progetto.naviglimetodologie chiocciola gmail.com
  • discussione progetto, eventuale orale e verbalizzazione: 31 luglio, dalle ore 9 (studio del docente)
Tutte le informazioni aggiornate sugli appelli si trovano sulla pagina relativa alle informazioni sul corso.

mercoledì 29 maggio 2013

Lab 29/5/2013: reflection, rilascio del codice ed esercizi

Introduzione alla Reflection. La classe Class. Ottenere un oggetto di tipo Class: da istanze di tipi non primitivi, da tipi primitivi, da tipi non primitivi, per nome: il metodo Class.forName. Scoprire i campi, metodi e costruttori di una classe. Esempio di uso della Reflection: creare intelligenze artificiali a tempo di esecuzione. Richiamare un determinato metodo a tempo di esecuzione.

Rilascio del codice: i file jar. Creazione di un file jar da console e con Eclipse. Jar eseguibili: il manifesto. Esecuzione di un file jar.

Esercizi: GestoreClassi, AlberoBinarioDiRicerca con i generici (provate a renderlo iterabile sui nodi).


Lezione 29/5/2013: fuori programma su PlayN!

Lezione "fuori programma" su PlayN: per chi sta sviluppando il mitico progetto SaGa (Sapienza Games)!


Lezione 28/5/2013: esercizi su design pattern

Esercizi su strategy, observer e singleton pattern. MultiMappa con generici.

venerdì 24 maggio 2013

Lezione 24/5/2013: Design pattern (1/2)

Che cos'è un design pattern. Lo Strategy Pattern: il simulatore di anatre. L'Observer Pattern: un'applicazione di monitoraggio del tempo. La metafora dell'abbonamento. java.util.Observable e java.util.Observer. Separare la creazione degli oggetti. Il Factory Pattern e il Simple Factory Pattern: la pizzeria e la pizzeria in franchising.


mercoledì 22 maggio 2013

Lab 22/5/2013: ancora sui generici ed esercizi

Discussione del progetto Sapy. Sicurezza dei generici a tempo di compilazione: confronto con gli array. Jolly come tipi generici. Esempio: metodo generico di somma. Cancellazione del tipo (type erasure). Esempio: cancellazione del tipo nella classe Coppia e nel metodo getMassimo. Esercizio: cancellazione del tipo nella classe Pila. Esercizi (esonero dell'anno scorso): multiinsieme e multimappa generici.


Lezione 21/5/2013: AWT e Swing

Introduzione alle interfacce grafiche in Java: AWT e Swing. Componenti principali: Container, Panel, Window, Frame, Dialog. Interazione con l'utente. Eventi ed Event Listener. Menù. Altre componenti.


venerdì 17 maggio 2013

Lezione 17/5/2013: esercizio scartaParentesi e tipi generici

Esercizio: metodo ricorsivo scartaParentesi. Tipi generici. Definire e utilizzare una classe generica. Specificare più tipi generici. Estendere le classi generiche. Esercizio: inverti lista generica. Generici e collezioni: interfacce generiche prototipiche. Definire un metodo generico. Calcolare il massimo di una collezione di elementi di tipo generico.