Programmazione ad Oggetti
Corso di Studio in Informatica
Anno accademico 2012/2013
Docente: Prof. Giovanni Manzini
Scopo del corso: Il corso ha l'obiettivo di insegnare il paradigma della programmazione ad oggetti utilizzando i linguaggi Ruby e Java.
Materiale bibliografico: I testi sulla programmazione ad oggetti, e su Ruby e Java in particolare, non mancano, ma ricordate che si impara di più scrivendo molti programmi piuttosto che leggendo molti libri.
Dave Thomas,
Programming Ruby 3rd Ed. The Pragmatic Programmers. Manuale quasi ufficiale di Ruby: tratta tutti gli aspetti del linguaggio. |
|
Marco Ceresa
Ruby (guida pocket). Apogeo. Se seguite il corso questa guida a Ruby è probabilmente tutto ciò che vi serve: descrive il linguaggio senza fronzoli o considerazioni filosofiche. |
|
Jeremy McAnally,
Mr. Neighborly's Humble Little Ruby Book. InfoQ. Testo su Ruby abbastanza chiaro e completo disponibile gratuitamente in pdf. L'esposizione è caratterizzata da uno stile umoristico, ma è necessario conoscere un po' l'inglese per apprezzarlo. |
|
R. Bruni, A. Corradini, V. Gervasi,
Programmazione in Java, 2a edizione.
Apogeo. Libro completo e ben fatto. C'è molto di più quanto facciamo, ma è utile averlo come manuale di riferimento del linguaggio. |
Modalità d'esame. L'esame consiste nella realizzazione di un mini-progetto in Ruby e/o Java. L'esame ha la durata di quattro ore e viene svolto in laboratorio. Le esercitazioni svolte in laboratorio e i compiti assegnati in passato danno una buona idea del tipo di esercizi che dovranno essere affrontati. Chi ottiene la sufficienza nella prova di laboratorio può registrare il voto ottenuto o chiedere di sostenere l'orale.
Registro elettronico delle lezioni. Il corso prevede 48 ore di lezione di cui circa un terzo saranno svolte in laboratorio.
|
Argomenti della lezione | Riferimenti |
---|---|---|
Lezione 1 2/10/12 |
Introduzione a Ruby. Istruzioni def, if/else, while, for. Variabili semplici, stringhe, array. | |
Lezione 2 3/10/12 |
Hash. Esempi di uso di array e hash. Introduzione alle classi. | campionato.rb |
Lezione 3 9/10/12 |
Classi: attributi e metodi. Esempio: la classe Frazione. I metodi initialize, to_s, == +, <=>. | Sorgente classe Frazione. |
Lezione 4 10/10/12 |
Esercitazione in laboratorio (squadre). | Testo esercizio. |
Lezione 5 17/10/12 |
Accesso agli attributi di una classe: attr_reader, attr_writer. Gli operatori di confronto (<, ≤, etc.) e l'operatore astronave (<=>). Variabili e metodi di classe. | |
Lezione 6 18/10/12 |
Esercitazione in laboratorio (lettore MP3). | Testo esercizio. |
Lezione 7 23/10/12 |
Ereditarietà. I metodi della classe object ==, to_s, dup. | |
Lezione 8 24/10/12 |
Moduli e Mixin. Introduzione ai blocchi. | |
Lezione 9 30/10/12 |
File I/O. Definizione e uso di eccezioni. | |
Lezione 10 31/10/12 |
Esercitazione in laboratorio | Testo esercizio. |
Lezione 11 13/11/12 |
Uso di hash in Ruby: i metodi hash, eql? e rehash.Metodi che prendono un blocco come argomento: le istruzioni yield, call, lambda, e method. | |
Lezione 12 14/11/12 |
Esercitazione in laboratorio (zaino) | Testo esercizio. |
Lezione 13 15/11/12 |
Esercitazione in laboratorio (piano di studi) | Testo esercizio. |
Lezione 14 20/11/12 |
Introduzione a Java: differenze e punti in comune con Ruby. | |
Lezione 15 21/11/12 |
Esercitazione in laboratorio (amazon) | Testo esercizio. |
Lezione 16 28/11/12 |
Ereditarietà, overloading, overriding. Modificatori di visibilità. Metodi della classe Object. Uso delle liste. | |
Lezione 17 29/11/12 |
Esercitazione in laboratorio (jobs) | Testo esercizio. |
Lezione 18 4/12/12 |
Keyword final. Classi astratte e interfaccie. L'interfaccia List. | |
Lezione 19 5/12/12 |
Esercitazione in laboratorio (mappa) | Testo esercizio. |
Lezione 20 6/12/12 |
Esercitazione in laboratorio | |
Lezione 21 11/12/12 |
Le interfaccie Comparable, Set e Collection . Le classi TreeSet, HashSet e il metodo hashCode. Le classi TreeMap, HashMap. | |
Lezione 22 12/12/12 |
Esercitazione in laboratorio | Testo esercizio. |
Lezione 23 18/12/12 |
Eccezioni. L'interfaccia Comparator. | |
Lezione 24 19/12/12 |
Esercitazione in laboratorio | Testo esercizio. |
Questa pagina è stata composta secondo lo standard HTML4.01 e
può essere letta usando un qualsiasi browser.