Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
Scuola di Scienze
INFORMATICA
Insegnamento
LINGUAGGI DI PROGRAMMAZIONE AVANZATI
SCM0018148, A.A. 2015/16

Informazioni valide per gli studenti immatricolati nell'A.A. 2015/16

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea magistrale in
INFORMATICA
SC1176, ordinamento 2014/15, A.A. 2015/16
N0
porta questa
pagina con te
Crediti formativi 6.0
Tipo di valutazione Voto
Denominazione inglese ADVANCED PROGRAMMING LANGUAGES
Sito della struttura didattica http://informatica.scienze.unipd.it/2015/laurea_magistrale
Dipartimento di riferimento Dipartimento di Matematica
Obbligo di frequenza No
Lingua di erogazione ITALIANO
Sede PADOVA
Corso singolo È possibile iscriversi all'insegnamento come corso singolo
Corso a libera scelta È possibile utilizzare l'insegnamento come corso a libera scelta

Docenti
Responsabile SILVIA CRAFA INF/01

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
CARATTERIZZANTE Discipline Informatiche INF/01 6.0

Organizzazione dell'insegnamento
Periodo di erogazione Annuale
Anno di corso I Anno
Modalità di erogazione frontale

Tipo ore Crediti Ore di
didattica
assistita
Ore Studio
Individuale
LEZIONE 6.0 48 102.0

Calendario
Inizio attività didattiche 01/10/2015
Fine attività didattiche 15/06/2016
Visualizza il calendario delle lezioni Lezioni 2019/20 Ord.2014

Commissioni d'esame
Nessuna commissione d'esame definita

Syllabus
Prerequisiti: Conoscenze di programmazione e di programmazione ad oggetti.
Conoscenze e abilita' da acquisire: Il corso presenta alcune tecniche avanzate dei moderni linguaggi di programmazione. Lo studente svilupperà la capacità di comprendere, ragionare e valutare alcune delle nuove tecniche di programmazione.
Modalita' di esame: Sono previste una prova scritta e una seconda prova che consiste nella discussione orale di un tema di approfondimento o in alternativa nella realizzazione di un progetto software.
Criteri di valutazione: La prova scritta valuta l'acquisizione dello studente degli aspetti fondazionali affrontati durante il corso. La seconda prova valuta la capacita' dello studente di analizzare e valutare aspetti avanzati dei linguaggi di programmazione.
Contenuti: Il corso presenta alcune tecniche avanzate dei moderni linguaggi di programmazione, tra cui: l'uso dei sistemi di tipi per ragionare sui programmmi, concetti avanzati di programmazione orientata agli oggetti (typing strutturale, type checking dinamico, mixins), linguaggi multi-paradigma, il design-by-contracts, programmazione concorrente basata sul modello ad attori. Tra i linguaggi su cui saranno affrontari questi argomenti ci sono Scala, C#, Spec#, Python, Ruby, Erlang, Go.
Attivita' di apprendimento previste e metodologie di insegnamento: Lezioni frontali con esercizi ed approfondimenti di argomenti di ricerca tramite articoli scientifici.
Eventuali indicazioni sui materiali di studio:
Testi di riferimento:
  • B.C. Pierce, Types and Programming Languages. --: The MIT Press, 2002. Cerca nel catalogo
  • M. Odersky, L. Spoon, B. Venners, Programming in Scala. --: Artima, 2008. Cerca nel catalogo