47478 - FONDAMENTI DI INFORMATICA B

Anno Accademico 2009/2010

  • Docente: Andrea Roli
  • Crediti formativi: 9
  • SSD: ING-INF/05
  • Lingua di insegnamento: Italiano
  • Moduli: Andrea Roli (Modulo 1) Elena Nardini (Modulo 2)
  • Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
  • Campus: Cesena
  • Corso: Laurea in Ingegneria elettronica, informatica e telecomunicazioni (cod. 8196)

Conoscenze e abilità da conseguire

Al termine del corso, lo studente possiede le conoscenze dei fondamenti della programmazione a oggetti e dispone delle metodologie di base per lo sviluppo di applicazioni software di medie dimensioni. In particolare, lo studente è in grado di: - sviluppare, modificare ed estendere programmi secondo il paradigma della programmazione a oggetti - utilizzare strutture dati avanzate e tecniche di programmazione ad eventi - realizzare semplici interfacce grafiche - progettare applicazioni di medie dimensioni in un linguaggio ad oggetti (Java, C++, C#)

Contenuti

  • Funzioni e procedure:
    • legami, regole di visibilità e ambienti
    • trasferimento dei parametri
    • chiamata delle funzioni e modello a tempo di esecuzione
  • Algoritmi e strutture dati (rudimenti)
    • allocazione statica e dinamica
    • complessità computazionale
  • Elementi di progettazione e programmazione del software ad oggetti
    • dagli algoritmi ai sistemi
    • elementi fondamentali programmazione ad oggetti
    • riuso, estendibilità , composizione
    • eccezioni
    • sistemi ad eventi, interfacce grafiche
    • sistemi di I/O, gestione dei file

Testi/Bibliografia

Gli appunti e diapositive del docente costituiscono il materiale di riferimento principale del corso. Fra i testi che possono essere utili per approfondire i concetti del corso:

  • Linguaggio C, Kernighan & Ritchie, Jackson Libri.
  • C: Corso completo di programmazione, Deitel & Deitel, Apogeo.
  • Concetti di informatica e fondamenti di Java 2, Horstmann, Apogeo.
  • Progettazione del software e design pattern in Java, Horstmann, Apogeo.

Metodi didattici

Il corso si sviluppa in un insieme bilanciato di lezioni di teoria e pratica in laboratorio, ove gli studenti svolgono esercizi, esercitazioni o progetti coadiuvati dal docente e dal tutor.

Modalità di verifica e valutazione dell'apprendimento

  • Prova scritta (con esercizi di analisi e sintesi e domande di teoria)
  • Prova orale con domande sugli argomenti del corso e discussione di un progetto presentato in gruppo

Strumenti a supporto della didattica

Pagina web del corso con PDF dei lucidi, altro materiale e link utili. Una parte delle lezioni sarà svolta in laboratorio.

Link ad altre eventuali informazioni

http://www.lia.deis.unibo.it/~aro

Orario di ricevimento

Consulta il sito web di Andrea Roli

Consulta il sito web di Elena Nardini