Fondamenti e programmazione (2014/2015)

Corso disattivato

Spazio Moodle non più disponibile
Codice insegnamento
4S001302
Crediti
6
Coordinatore
Ugo Solitro
L'insegnamento è organizzato come segue:
Modulo Crediti Settore disciplinare Periodo Docenti
COMPLEMENTI 1 INF/01-INFORMATICA II sem., I sem. Romeo Rizzi
DIDATTICA 2 INF/01-INFORMATICA II sem., I sem. Nicola Bombieri
FONDAMENTI 3 INF/01-INFORMATICA II sem., I sem. Ugo Solitro

Obiettivi formativi

L'insegnamento affronta le questioni più rilevanti legate ai concetti fondamentali della disciplina in generale e, in particolare, degli algoritmi, della programmazione, dei linguaggi e delle tecniche di risoluzione dei problemi. Lo scopo è quello di ripensare gli aspetti fondamentali legati alla programmazione, e in generale all'informatica, al fine di valutare criticamente le scelte e i metodi della didattica.
Saranno approfonditi gli aspetti storici e fondamentali, oltre a quelli didattici e metodologici.

L’insegnamento è strutturato in tre moduli.

Modulo A - Fondamenti:
- rassegna e analisi critica delle nozioni fondamentali, degli aspetti storici;
- i rapporti con altre discipline.
Modulo B - Didattica:
- aspetti didattici dell’insegnamento della programmazione, degli algoritmi e dei linguaggi.
Modulo C - Complementi:
- rassegna su alcuni metodi speciali per l’apprendimento della programmazione.

Programma

Modulo: DIDATTICA
-------
- Temi fondamentali
- Lo sviluppo dal problema alla soluzione.
- Implementazione e linguaggi.
- Metodologie legate alla programmazione.
- Valutazione del codice.
- Strumenti didattici
- Libri di testo e risorse on line.
- Strumenti software.


Modulo: FONDAMENTI
-------
Contenuti generali

Argomenti riferibili all’insegnamento.

- Fondamenti: la natura e la storia dell’informatica, i modelli di computazione, gli algoritmi e la computabilità.
- Programmazione: dalla definizione problema alla realizzazione della soluzione, la valutazione delle soluzioni: correttezza, terminazione, costo computazionale.
- Strutture dati: i tipi di dati primitivi: caratteristiche fondamentali; i dati strutturati e gli oggetti.
- Linguaggi di programmazione: i paradigmi fondamentali di programmazione.
- Metodologie di risoluzione dei problemi
- Complementi

Contenuti specifici

======
Modulo A – Fondamenti

Introduzione.
- La natura dell’informatica: diverse accezioni (strumento, tecnologia, disciplina)
e anime (matematica, ingegneria, scienza); relazioni con le altre discipline.
- Prospettive storiche: gli algoritmi nella storia, le macchine di calcolo e l’evoluzione tecnologica, dalla crisi dei fondamenti ai linguaggi di programmazione attuali.
- Gli algoritmi nella Matematica e altrove: sulla nozione di algoritmo.
- Linguaggi fondamentali.
- Questioni di computabilità.
- Il paradigma imperativo etc.
- Modelli di computazione.
- Aspetti essenziali della programmazione imperativa. Evoluzione del paradigma imperativo. Il paradigma Imperativo (e le sue estensioni).
- Strutture di dati e Tipi.
- Altri paradigmi: funzionale, logico, … Programmazione orientata agli oggetti.
- Complementi.


Modulo: COMPLEMENTI
-------
-Iniziative per stimolare l’apprendimento,
-Il fascino del problem solving
-Approccio diretto e sperimentale alla programmazione

Modalità d'esame

L'esame è unico per l'intero insegnamento.

La prova scritta che consiste in un elaborato in chiave generale e didattica di uno o più argomenti e/o esercizi correlati agli argomenti svolti in aula e alle attività proposte in itinere, al fine di valutare le conoscenze e competenze disciplinari e didattiche.

Il colloquio orale che consiste in una discussione sugli argomenti trattati a lezione, le attività proposte in itinere, i contenuti relativi alla prova scritta.

Condividi