Corso di Programmazione 2 - Laurea (triennale) in Informatica - a.a. 2005/06 - Marco Ronchetti
Programmazione 2 - aa 2005/6 > Informazioni generali > Syllabus
  Informazioni generali   Lezioni   Video   Forum   Blog   Materiale addizionale   Esami    
Syllabus
Docenti
Avvisi
 
Syllabus
1) Elementi introduttivi di programmazione ad oggetti in C++.
- Richiami sui puntatori, stack, dereferenziazione di strutture
­- Richiami sugli arrays e sulla loro relazione con i puntatori
­- Operatori new e delete, memory leaks
­- Allocazione dinamica di memoria: heap
­- Passaggio dalle strutture agli oggetti.
­- Cenni di modellazione UML

2) Introduzione a Java
- Introduzione al linguaggio
- Cenni di I/O in Java
- Eccezioni e blocco try/catch.
- Modificatori

3) Ereditarietà e polimorfismo.
- Costruttori sintetizzati automaticamente.
­- metodo finalize
- this e super
- Overloading/overriding
- Principio di Parna
- Principio di sostituzione di Liskov
- Coercion
- dynamic e static binding.
- Interfacce
- Esempi di interfacce e ereditarietà nelle API di Java 2

4) Approfondimenti di programmazione ad oggetti
- Uguaglianza e identità di oggetti
­- Copia di oggetti: copie profonde vs. copie superficiali. Metodo clone.
­- Variabili e metodi statici

5) Introduzione alla grafica in Java: Swing.
­- Gerarchia della classi di grafica
- Le pricipali classi grafiche
­- Pluggable Look and Feel
- Pattern Model ­ View ­ Controller

6) Eventi:
­- Low level events / Semantic events
­- Modelli di gestione degli eventi
­- Adapters
­- Inner Classes e Anonymous Inner Classes

7) Complementi:
- Applets ­ Javadoc - Jar
Conoscenza dei costrutti fondamentali della programmazione imperativa in C.
Il corso introduce le tecniche e i costrutti della programmazione ad oggetti come una evoluzione necessaria per affrontare il problema della crescente complessità degli artefatti software.
Alla fine del corso lo studente dovrà aver acquisito familiarità con i concetti di classe, oggetto, ereditarietà, polimorfismo, information hiding, binding statico e dinamico. Verranno utilizzati come linguaggi di programmazione il C++ e Java.
Bruce Eckel, Thinking in C++: Introduction to Standard C++, Prentice Hall; ISBN: 139798099 
Bruce Eckel, Thinking in Java, Apogeo, ISBN: 88-7303-998-7 
 
Materiale on line reso disponibile durante il corso


 

more rss...

powered by segue
segue_logo