Home Home Page UNITN
 

Ultimo aggiornamento: 9 marzo 2004

 
 

Strumenti

Corso di Laurea in Informatica
Programmazione 2 (2003/2004)

Video del corso accessibile via Internet - vedi "Supporto al corso"
 Informazioni Generali
Docente:
Anno Accademico: 2003/2004
Orario delle lezioni di teoria:
Le lezioni si tengono sempre in aula 21:
lunedi8:30-10:30
martedi8:30-10:30
venerdi8:30-11:30
Nota: per compensare la presenza delle ore di esercitazione sotto riportate, nove ore di lezione "salteranno". Il calendario di tali eccezioni verrà riportato per tempo.
Orario delle lezioni di esercitazione: Per le esercitazioni gli studenti sono divisi in tre gruppi. Ciascun gruppo farà tre esercitazioni. Le lezioni di esercitazione si tengono in aula dalle 14:30 alle 17:30 secondo il seguente calendario:
Gruppo A: A-C + Apprendisti venerdi 20/2venerdi 12/3venerdi 26/3
Gruppo B: D-P venerdi 27/2martedi 16/3martedi 30/3
Gruppo C: Q-Z venerdi 5/3venerdi 19/3venerdi 2/4
Crediti: 6

 Programma

Obiettivi
Il corso introduce la programmazione ad oggetti come una metodologia che permetta di irrobustire il processo di produzione e di suddividere il lavoro in un team di sviluppatori.
Il linguaggio di riferimento ਠil C++: vengono inoltre fatti cenni di UML.

Argomenti trattati

  • Riepilogo della gestione dinamica della memoria e dei meccanismi di passaggio di parametri
  • Classi, oggetti, metodi, messaggi
  • Creazione e distruzione di oggetti
  • Uguaglianza e identità  di oggetti
  • Visibililità  e information hiding
  • Ereditarietà  e aggregazione
  • Overloading e overriding
  • Polimorfismo e funzioni virtuali
  • Classi astratte e interfacce
  • I/O in C++ e overloading degli operatori
  • Static e dynamic binding
  • Upcasting e downcasting
  • Eccezioni
 Materiale per la preparazione dell'esame

Libri di testo

  • Bruce Eckel: "Thinking in C++: Introduction to Standard C++", Prentice Hall , ISBN: 0139798099,
    disponibile on-line all’indirizzo
    http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
  • Budd Timothy A., An Introduction to Object-Oriented Programming (3rd edition), Addison Wesley, 2002.
  • Cay S. Horstmann e Gary Cornell, Java 2 - I fondamenti, 1999, Java 2 - Tecniche Avanzate, 2000 - McGrawHill (in italiano) Core Java 2, Volume I-Fundamentals, 1999, Volume II-Advanced Features, 2000, Prentice-Hall (in inglese)
  • Bruce Eckel, Thinking in Java, (2nd edition), Prentice-Hall, 2000;
    Il testo è reperibile on-line on-line all’indirizzo
    http://www.mindview.net/Books

Supporto al corso

  • Il materiale didattico (copia delle slides) è disponibili su questo sito, nella sezione "Diario del corso".
  • Per materiale di riferimento vario, si veda la sezione Biblioteca e Useful tools (link accessibili solo dall'interno dell'Università)
  • E' disponibile un CD con i tools consigliati per Java, una copia del Sun Tutorial ed altro materiale di riferimento. Per ottenere copia del CD gli studenti devono rivolgersi in atrio (fuori dall'aula 21) a Simone Abram (il portiere). Consegnando un CD vergine (velocità di scrittura almeno 24x!) potrete farvi copiare il CD dei tools.
  • Il corso è uguale a quello tenuto nell'a.a. 2002/2003. Le lezioni del 2002/2003 sono state videoregistrate e messe a disposizione degli studenti in forma elettronica, sia tramite collegamenti on-line, sia su supporto CD.
    • Link alle lezioni registrate li trovate nel "diario del corso". Per utilizzare il video è necessario disporre di una connessione a una banda larga (ISDN 128K o ADSL), o essere su una LAN di Ateneo.
    • Per ottenere i CD con le registrazioni delle lezioni gli studenti devono rivolgersi in atrio (fuori dall'aula 21) a Simone Abram (il portiere). Consegnando un CD vergine (velocità di scrittura almeno 24x!) potrete farvi copiare la lezione desiderata.
        CD Disponibili:
      • Lezione 1 (16 febbraio)
      • Lezioni 2-7
      • Lezioni 8-12
      • Lezioni 13-17
      • Lezioni 18-23
  • Materiale preparato da studenti: Sono a disposizione degli appunti sul C++ scritti nell'a.a. 2001/2002 da uno studente (Carlo Tomas) e messi a disposizione dei colleghi. Non assumo responsabilità sul contenuto, anche se la parte che ho letto mi sembrava fatta bene.