FONDAMENTI DI INFORMATICA + LABORATORIO DI PROGRAMMAZIONE (2° MODULO) ( cod. 1004158)
Insegnamento di INGEGNERIA INFORMATICA, ELETTRONICA E DELLE TELECOMUNICAZIONI (Corsi di Laurea)
Facoltà di Corsi di Laurea triennale (D.M. 270/04)
TIPOLOGIA DELL'INSEGNAMENTO: ATTIVITÀ FORMATIVE VARIE
Lingua Insegnamento:
Italiano
FREQUENZA FACOLTATIVA
Obiettivi
Apprendere i concetti di base dell'informatica e saper sviluppare semplici programmi per calcolatori elettronici, secondo il paradigma ad oggetti. Come linguaggio di programmazione principale viene usato il C++.
Prerequisiti
Nessuna propedeuticità. Si suppone comunque che lo studente conosca le basi dell'uso del computer e di Internet - l'equivalente dei moduli 1, 2, 3 e 7 del Syllabus ECDL (European Computer Driving Licence).
Contenuti dell'insegnamento
Linguaggio C++, collezioni e flussi di dati, funzioni, classi ed oggetti, interfacce grafiche, gestione della memoria.
Programma esteso
Le esercitazioni in laboratorio sono centrali per il corso. Gli esercizi proposti vertono sugli stessi argomenti generali delle lezioni in aula. L'obiettivo è di introdurre i principi della programmazione orientata agli oggetti, guidando lo studente alla soluzione di problemi con un livello di complessità crescente.
1. Il linguaggio C++: struttura di un programma, tipi di dati, costanti, variabili, espressioni, condizioni, cicli, annidamento.
2. Collezioni e flussi di dati: vettori, matrici, mappe, lettura e scrittura dati, console, file, stringhe.
3. Funzioni: ambito degli identificatori, modalità di passaggio dei parametri, stack e record di attivazione, ricorsione.
4. Classi ed oggetti: incapsulamento, allocazione dinamica di oggetti, associazioni tra classi, ereditarietà e polimorfismo.
5. Interfacce grafiche: librerie Qt, disposizione degli elementi, bottoni, menu, meccanismi di segnalazione, eventi, timer, scene con elementi animati.
6. Gestione della memoria: iteratori, puntatori, array ed array di caratteri, gestione dinamica della memoria.
Bibliografia Consigliata
B. Stroustrup: Programming: Principles and Practice Using C++ - Addison-Wesley (2009) - 978-0321543721
B. Eckel: Thinking in C++. Prentice-Hall (2000).
A. Koenig, B.E. Moo: Accelerated C++: Practical Programming by Example. Addison-Wesley (2000).
Docenti
Anno accademico:
2012
Anno di corso:
1
Semestre:
1
Numero CFU:
3
SSD:
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI (ING-INF/05)
Ambito:
Abilità informatiche e telematiche
Ore di attivita frontale:
21
Ore studio individuale:
45 






