INTRODUZIONE ALLA PROGRAMMAZIONE-1 ESERCITAZIONI

Anno accademico
2019/2020 Programmi anni precedenti
Titolo corso in inglese
INTRODUCTION TO PROGRAMMING-1 PRACTICE
Codice insegnamento
CT0441 (AF:306605 AR:166173)
Modalità
In presenza
Crediti formativi universitari
0 su 6 di INTRODUZIONE ALLA PROGRAMMAZIONE
Partizione
Classe 2
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#:
- Ricorsione: algoritmi su liste, interi, stringhe
- Tipi e type inference
- Liste e pattern matching
- Tipi unione
- 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 programma da realizzare in gruppi di 2 o più persone in linguaggio F#, utilizzando Visual Studio 2017. La specifica completa del programma sarà definita sulla pagina moodle del corso:
https://moodle.unive.it/course/view.php?id=2104
Durante il corso verranno assegnati dei task che consisteranno in parti di progetto: gli studenti avranno la possibilità di realizzare il progetto procedendo gradualmente, seguendo le lezioni del corso.

** Esame Orale
L'esame consiste in una interrogazione orale volta a discutere il 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.

Per passare l'esame è necessario ottenere la sufficienza sia nel corso di Introduzione alla Programmazione sia nel presente corso di laboratorio, superando l'orale suddetto.
Per gli appelli d'esame straordinari (sessioni di giugno e settembre) sarà richiesto un progetto più corposo da discutere durante la prova orale.
Lezioni frontali in laboratorio con i computer.
scritto e orale
Programma definitivo.
Data ultima modifica programma: 11/09/2019