Modulo | Crediti | Settore disciplinare | Periodo | Docenti |
---|---|---|---|---|
Programmazione (laboratorio) | 4 | INF/01-INFORMATICA | 2° Q, 3° Q |
Ugo Solitro
|
Programmazione (teoria) | 6 | INF/01-INFORMATICA | 2° Q, 3° Q |
Ugo Solitro
|
Modulo: Programmazione (laboratorio)
-------
Scopo dell'insegnamento della programmazione e della sua applicazione per la risoluzione dei problemi, sia generali che di carattere matematico, per mezzo di un linguaggio imperativo.


Nel modulo di laboratorio (48 ore di lezione e pratica in laboratorio) si imparerà a programmare attraverso lo sviluppo pratico di progetti in uno specifico linguaggio di programmazione.
Modulo: Programmazione (teoria)
-------
Scopo dell'insegnamento della programmazione e della sua applicazione per la risoluzione dei problemi, sia generali che di carattere matematico, per mezzo di un linguaggio di programmazione imperativo.



Nel modulo di teoria (48 ore di lezione in aula) si studiano i principi generali della programmazione, le tecniche fondamentali per l'analisi e la soluzione dei problemi e inoltre i metodi per la valutazione degli algoritmi sia in termini di efficienza che di correttezza.
Modulo: Programmazione (laboratorio)
-------

L'attività di laboratorio consiste nello sviluppo di programmi e di progetti per l'apprendimento del linguaggio applicando i principi e le nozioni apprese durante le lezioni in aula.


Si studiano i costrutti principali del linguaggio di programmazione e i problemi legati allo sviluppo pratico delle soluzioni editing, compilazione, debugging, gestione di progetti di medie dimensioni.
Modulo: Programmazione (teoria)
-------

Pre-requisiti.

Si richiede una buona conoscenza degli argomenti, teorici e pratici, dell'insegnamento di Informatica di Base.


Contentuti.


Richiami sulle definizioni fondamentali: problema, specifiche, algoritmo; macchina astratta, compilatore e interprete; i linguaggi di programmazione.

- Introduzione al linguaggio di programmazione. Elementi di sintassi del linguaggio.
- Programmi elementari.
 I tipi di dati. Nozione generale di tipo di dati; caratterizzazione; rappresentazione dei dati. Le espressioni e l'assegnamento.
- I tipi di dati primitivi: caratteristiche, uso e problemi.

- Struttura degli programmi.
 Il controllo del flusso: condizionale, iterazione, blocco, ... I sotto-programmi.
- 
Tipi di dati strutturati.
 Array, puntatori, stringhe e altre strutture dati: caratteristiche fondamentali e loro uso. Strutture dati dinamiche: definizione astratta e possibili implementazioni.

- Correttezza degli algoritmi: terminazione, proprietà logiche dei programmi, invarianti; metodi per la verifica della correttezza.

- Elementi di analisi di complessità.
 Nozioni di complessità in tempo e in spazio.
Studio di algoritmi notevoli.


- Complementi. Gli altri paradigmi di programmazione: a oggetti e funzionale.
Modulo: Programmazione (laboratorio)
-------
L'esame finale è unico per i moduli di teoria e laboratorio e prevede:

- una prova scritta sugli argomenti di teoria e sui progetti sviluppati in laboratorio;
- un colloquio orale nel quale possono essere discusse la prova scritta, l'attività di laboratorio e in generale gli argomenti previsti dal programma d'esame.


La prova d'esame può essere in tutto o in parte sostituita da prove di verifica effettuate durante lo svolgimento del corso.



Modulo: Programmazione (teoria)
-------
L'esame finale è unico per i moduli di teoria e laboratorio e prevede:

- una prova scritta sugli argomenti di teoria e sui progetti sviluppati in laboratorio;
- un colloquio orale nel quale possono essere discusse la prova scritta, l'attività di laboratorio e in generale gli argomenti previsti dal programma d'esame.


La prova d'esame può essere in tutto o in parte sostituita da prove di verifica effettuate durante lo svolgimento del corso.



Autore | Titolo | Casa editrice | Anno | ISBN | Note |
Stefano Mizzaro | Introduzione alla programmazione con il linguaggio Java (Edizione 2) | Franco Angeli | 2000 | 8846416961 | |
Crescenzi, P. - Gambosi, G. - Grossi, R. | Strutture di Dati e Algoritmi | Pearson Education Italia | 2006 | 8871922735 |
CSS e script comuni siti DOL - frase 9957