Università degli studi dell'Insubria

PROGRAMMAZIONE FUNZIONALE

A.A. di erogazione 2017/2018

Laurea triennale in INFORMATICA
 (A.A. 2016/2017)

Docenti

Anno di corso: 
2
Tipologia di insegnamento: 
Affine/Integrativa
Settore disciplinare: 
INFORMATICA (INF/01)
Crediti: 
6
Ciclo: 
Secondo Semestre
Ore di attivita' frontale: 
48
Dettaglio ore: 
Lezione (48 ore)

Lo scopo di questo corso è fornire agli studenti una solida conoscenza
della programmazione funzionale, delle sue applicazioni, e dei suoi
punti di forza e di debolezza. Il corso sarà basato sul linguaggio di
programmazione Scala, un moderno linguaggio funzionale eseguito su JVM
ampiamente utilizzato a livello industriale. Scopo del corso è anche
quello di mostrare come il paradigma di programmazione funzionale
possa essere efficace da un punto di vista del software engineering –
offrendo ottimo supporto per la scrittura di programmi concisi,
riutilizzabile e sicuri.

Lo studente imparerà a modellare i problemi dal punto di vista della
programmazione funzionale e a sviluppare programmi in Scala attraverso
un uso efficace e consapevole delle caratteristiche del linguaggio.
Ci si aspetta che uno studente sviluppi la capacità di giudicare quale
sia il paradigma di programmazione più adatto ad un dato contesto
applicativo. La conoscenza delle caratteristiche dei linguaggi
funzionali permette allo studente di analizzare in profondità le
caratteristiche di altri linguaggi di programmazione, e di arricchire
la propria competenza tecnica in modo autonomo.

Prerequisiti: 

Programmazione, Algoritmi e strutture dati

- Introduzione alla programmazione funzionale.
- Classi, oggetti, tipi di base e operazioni.
- Strutture di controllo predefinite
- Funzioni e closures
- Meccanismi di astrazione, composizione ed ereditarietà
- Implementazione delle strutture dati
- Attori e concorrenza

40 ore di lezioni frontali, 12 ore di esercitazione in classe, 98
ore di studio individuale

Modalita' di verifica dell'apprendimento: 

Esame scritto e orale. Lo scritto (durata di 2 ore) consiste in
domande relative agli argomenti trattati nel corso e in esercizi di
programmazione nel linguaggio di riferimento. In caso di esito
positivo della prova scritta lo studente è ammesso alla prova orale
che consiste nella discussione dello scritto e un approfondimento
sugli argomenti trattati nel corso.

Martin Odersky, Lex Spoon, Bill Venners. Programming in Scala: A
Comprehensive Step-by-Step Guide, Third Edition. Artima Press, 2016

Ricevimento studenti: appuntamento tramite richiesta via e-mail.

Cerchi il programma? Potrebbe non essere ancora stato caricato o riferirsi ad insegnamenti che verranno erogati in futuro.
Seleziona l‘anno in cui ti sei immatricolato e troverai le informazioni relative all'insegnamento del tuo piano di studio.

A.A. 2017/2018

Anno di corso: 2
Curriculum: PERCORSO COMUNE

A.A. 2016/2017

Anno di corso: 3
Curriculum: PERCORSO COMUNE