INTRODUZIONE ALLA PROGRAMMAZIONE-1 ESERCITAZIONI

Anno accademico
2018/2019 Programmi anni precedenti
Titolo corso in inglese
INTRODUCTION TO PROGRAMMING-1 PRACTICE
Codice insegnamento
CT0441 (AF:297191 AR:163588)
Modalità
Crediti formativi universitari
0 su 6 di INTRODUZIONE ALLA PROGRAMMAZIONE
Partizione
Classe 1
Livello laurea
Laurea
Settore scientifico disciplinare
INF/01
Periodo
I Semestre
Anno corso
1
Sede
VENEZIA
Il corso si propone di introdurre gli elementi base della programmazione per affrontare i problemi che ammettono soluzioni algoritmiche e per conoscere i rudimenti dei linguaggi di programmazione nei principali paradigmi.
Lo studente apprenderà i rudimenti della programmazione funzionale, in quanto paradigma di programmazione disciplinato e sicuro, vicino a i formalismi matematici e lontano dai dettagli implementativi a basso livello.
Questo è ideale per l'apprendimento del pensiero computazionale e della scrittura di algoritmi concentrando energie e sforzi sulla soluzione del problema e non sugli intricati aspetti legati alla memoria ed all'architettura dei computer.
Al termine lo studente dovrà saper progettare ed implementare semplici programmi, sviluppati secondo il paradigma funzionale, tramite la ricorsione e la manipolazione di strutture dati pure (liste immodificabili); ed il paradigma imperativo entro il termine del secondo modulo. Dovrà inoltre essere in grado di analizzare la struttura logica di un programma per verificarne la correttezza.
Nessun prerequisito ad eccezione del test nazionale TOLC-I, necessario per potersi iscrivere al corso di laura in Informatica.
Programmazione funzionale in linguaggio F#:
- Funzioni di ordine superiore
- Ricorsione e induzione
- Tipi e type inference
- Liste e pattern matching
- Iterazione e programmazione ibrida funzionale-imperativo
- M. Hailperin, B. Kaiser, K. Knight : Concrete Abstractions, Brooks/Cole Publishing Company, 1999 http://gustavus.edu/+max/concrete-abstractions-pdfs/index.html
- Dispense a cura del docente.
Progetto.
Parte fondamentale della verifica dell'apprendimento è lo sviluppo di un progetto - un piccolo programma a sé stante, da realizzare in gruppi di 2 persone in 8 settimane in linguaggio F#, utilizzando Visual Studio 2017. La specifica completa del programma sarà definita sulla pagina moodle del corso:
https://moodle.unive.it/mod/assign/view.php?id=48196

Esercitazioni.
A cadenza settimanale, durante i mesi di corso, verrano proposte delle esercitazioni da svolgersi singolarmente in linguaggio F# aventi un duplice scopo: in primo luogo, affrontare in maniera pratica ed approfondire i concetti esposti in aula durante le lezioni frontali; infine, fornire un addestramento continuo e graduale alla programmazione, con lo scopo di portare gli studenti ad essere in grado di affrontare la scrittura del progetto.

Orale.
Ci sarà una interrogazione orale volta a discutere il codice del progetto ed a verificare le capacità di programmazione in linguaggio F# di ciascun studente di ciascun gruppo.
Tali capacità sono propedeutiche per l'avanzamento nel corso di laurea in informatica, rappresentando le basi che ogni laureando deve possedere per comprendere i paradigmi, gli stili e le logiche della programmazione.

Lezioni frontali in laboratorio con i computer.
scritto e orale
Programma definitivo.
Data ultima modifica programma: 27/11/2018