LINGUAGGI PER LA RETE

Anno accademico
2024/2025 Programmi anni precedenti
Titolo corso in inglese
LANGUAGES FOR WEB AND NETWORKING APPLICATIONS
Codice insegnamento
CT0178 (AF:469186 AR:218243)
Modalità
In presenza
Crediti formativi universitari
6
Livello laurea
Laurea
Settore scientifico disciplinare
INF/01
Periodo
I Semestre
Anno corso
2
Sede
VENEZIA
Spazio Moodle
Link allo spazio del corso
L’insegnamento è una delle attività formative accessorie del corso di laurea in Informatica. Si colloca nel contesto delle tecnologie web, ed in particolare fra i corsi che si concentrano sulle metodologie e gli strumenti per la realizzazione di applicazioni connesse e distribuite tramite rete internet.
L'obiettivo dell’insegnamento è fornire conoscenze relative ai linguaggi browser-hosted ed in particolare a Javascript.
Il corso si prefigge di preparare lo studente alla progettazione e realizzazione di applicazioni portabili e trasversali sfruttando l'insieme di tecnologie intrinsecamente multi piattaforma costituito da Javascript, HTML 5, DOM, WebGL. Particolare attenzione sarà dedicata a sviluppare una profonda conoscenza dei loro difetti e limiti, e delle conseguenti best practices messe a punto per superarli e per gestire le idiosincrasie interne alle singole tecnologie e conseguenti alla loro combinazione. Il corso prevede ampie sessioni laboratoriali e dei piccoli progetti.
Lo studente deve essere in grado di programmare in almeno un linguaggio di alto livello.
* Tipi, valori e variabili
* Caratteristiche generali di oggetti ed array
* Funzioni
* Programmazione orientata agli oggetti
* Implementazione di oggetti e costruttori
* Modello DOM e manipolazione dei documenti
* Gestione e manipolazione CSS
* Il sistema degli eventi
* API SVG per rendering di oggetti vettoriali
* API HTML5 Canvas per rendering stateful
* API di scena per WebGL
* Programmazione asincrona
Javascript The definitive Guide, David Flanagan, O'Reilly
Risorse online e documentazione delle singole api
L'esame consiste in una prova scritta. Nel dettaglio sono previste:

Tre domande teoriche la cui risposta deve essere scritta nello stesso foglio del testo, da consegnare entro 30 minuti dall'inizio della prova. Ad ogni domanda sono attribuiti fino a 4 punti, per un totale di 12 punti.

Nel dettaglio, sono attribuiti 0 punti per risposta vuota o non pertinente, 1 punto per risposta attinente ma prevalentemente incompleta o scorretta, 2 punti per risposta parzialmente incompleta o scorretta, 3 punti per risposta generalmente corretta ma con un errore che indica non perfetta comprensione, 4 punti per risposta completa e corretta,

Uno o due esercizi di programmazione (eventualmente collegati) che lo studente deve risolvere tramite la scrittura delle opportune classi, usando lo stesso foglio del testo, da consegnare entro 60 minuti dalla consegna della prima parte (o 90 minuti dall'inizio della prova). Questa parte permette di ottenere fino a 20 punti.

Nel dettaglio, sono attribuiti fino a 5 punti per uno svolgimento che denota una conoscenza di base del linguaggio, ma risulta totalmente inefficace nella soluzione proposta, fino a 10 punti per uno svolgimento che dimostra una conoscenza media del linguaggio e fornisce un'impostazione corretta della soluzione ma un'esecuzione molto lacunosa, fino a 15 punti per uno svolgimento che dimostra una buona conoscenza del linguaggio e una buona esecuzione seppure non completamente corretta, fino a 20 punti per uno svolgimento che dimostra un'ottima conoscenza del linguaggio ed un'esecuzione corretta e funzionante.

Per lo svolgimento della prima parte lo studente non può utilizzare alcun materiale. Per lo svolgimento della seconda parte è possibile utilizzare qualsiasi tipo di materiale purchè in forma cartacea.
Lezioni teoriche.
Esercitazioni.
Lezioni pratiche.
Italiano
scritto
Programma definitivo.
Data ultima modifica programma: 15/04/2024