Università degli studi dell'Insubria

FONDAMENTI DEI LINGUAGGI DI PROGRAMMAZIONE

A.A. di erogazione 2016/2017

Laurea triennale in INFORMATICA (A.A. 2015/2016)
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)

Obiettivi dell’insegnamento e risultati di apprendimento attesi
Conoscenza e capacità di comprensione (knowledge and under standing)
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. Al fine di raggiungere questi obiettivi, 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.
Capacità di applicare conoscenza e comprensione (applying knowledge and understanding)
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.
Autonomia di giudizio e abilità comunicative
Ci si aspetta che uno studente sviluppi la capacità di giudicare quale sia il paradigma di programmazione più adatto ad un dato contesto applicativo.
Capacità di apprendere
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.

Contenuti e programma del corso
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

Tipologia delle attività didattiche
Lezioni frontali, 48 ore.

Testi e materiale didattico
Libro di testo: Martin Odersky, Lex Spoon, Bill Venners. Programming in Scala: A Comprehensive Step-by-Step Guide, Third Edition. Artima Press, 2016
Altro materiale (disponibile sul sito di e-learning): Slides, dispense, esempi di applicazioni.

Modalità 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.

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. 2014/2015

Anno di corso: 3
Curriculum: PERCORSO COMUNE

A.A. 2013/2014

Anno di corso: 2
Curriculum: PERCORSO COMUNE