Programmazione web e mobile

A.A. 2018/2019
6
Crediti massimi
48
Ore totali
SSD
INF/01
Lingua
Italiano
Obiettivi formativi
Il WWW ha saputo imporsi negli anni come un ambiente universale in grado di supportare le più svariate applicazioni. La generalità dell'ambiente è determinata da un'architettura semplice e scalabile. Tuttavia, negli anni, la necessità di supportare nuove applicazioni e nuovi dispositivi d'accesso, ha richiesto che le tecnologie adottate nel Web evolvessero per sostenere processi informativi maturi: capaci di gestire in modo efficiente la portabilità, l'interrogazione, la persistenza e l'elaborazione dei dati.
Il corso introduce le principali tecnologie del Web è ha in particolare i seguenti obiettivi:
· Comprensione dei principi sui quali si fonda il Web e degli elementi che si sono consolidati durante la sua evoluzione.
· Comprensione dei principi fondamentali di progettazione di una applicazione Web.
· Conoscenza delle principali tecnologie disponibili per lo sviluppo di applicazioni Web.
· Conoscenza dei più comuni design pattern adottati per la risoluzione dei problemi ricorrenti nella programmazione di applicazioni Web.
Risultati apprendimento attesi
· Comprensione dei principi sui quali si fonda il Web e degli elementi che si sono consolidati durante la sua evoluzione.
· Comprensione dei principi fondamentali di progettazione di una applicazione Web.
· Conoscenza delle principali tecnologie disponibili per lo sviluppo di applicazioni Web.
· Conoscenza dei più comuni design pattern adottati per la risoluzione dei problemi ricorrenti nella programmazione di applicazioni Web.
Corso singolo

Questo insegnamento non può essere seguito come corso singolo. Puoi trovare gli insegnamenti disponibili consultando il catalogo corsi singoli.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo semestre

Programma
Il corso si suddivide in cinque moduli che affronteranno gli argomenti dettagliati più sotto.

1. Storia e architettura del WWW
- Da Internet al Web
- Gli standard implementativi del Web
- I primi anni e la competizione per gli standard di rappresentazione
- Le ragioni della scalabilità del Web
- Web 2.0, Web mobile e Architetture Cloud

2. Interfaccia
- HTML, sintassi e parsing
- XHTML e CSS
- AJAX e Javascript
- CSS3
- HTML5, nuovo vocabolario
- HTML5, Canvas e SVG
- HTML5, Communication API
- HTML5, applicazioni offline

3. Data
- HTML come vocabolario di rappresentazione di documenti
- HTML come vocabolario di rappresentazione di interfacce
- La gestione dei dati in contesti multicanale
- I protocolli REST
- Dai database alle architetture Cloud

4. Procedure
- CGI e linguaggi di scripting lato server
- Javascript
- NodeJS, moduli
- NodeJS, gestione degli eventi
- NodeJS, creazione e manipolazione di file
- NodeJS, comunicazione HTTP
- NodeJS, comunicazione HTTPs

5. Progettare nel Web
- L'economia dei beni digitali
- Modelli di business per il Web
- Esternalità della rete
- Principi di usabilità architettura dell'informazione
- Ambienti e framework di programmazione Web e Mobile
Informazioni sul programma
· Comprensione dei principi sui quali si fonda il Web e degli elementi che si sono consolidati durante la sua evoluzione.
· Comprensione dei principi fondamentali di progettazione di una applicazione Web.
· Conoscenza delle principali tecnologie disponibili per lo sviluppo di applicazioni Web.
· Conoscenza dei più comuni design pattern adottati per la risoluzione dei problemi ricorrenti nella programmazione di applicazioni Web.
Propedeuticità
Nessuna
Prerequisiti
Si richiede una conoscenza dei concetti base di programmazione e la capacità di leggere un testo in inglese.

Esame scritto e orale
Metodi didattici
Lezioni frontali.
Esercitazioni.
Materiale di riferimento
· Lucidi ed esercizi proposti a lezione e attraverso la piattaforma Ariel
· HTML 5 e CSS 3 - Gabriele Gigliotti, Milano: Apogeo, c2011
· Professional Node.js Building Javascript-Based Scalable Software - Pedro Teixeira: John Wiley & Sons, Inc. 2013
· HTML5, A vocabulary and associated APIs for HTML and XHTML: http://www.w3.org/TR/html5/
· Beginning JavaScript with DOM scripting and Ajax /- Russ Ferguson, Christian Heilmann. 2013
INF/01 - INFORMATICA - CFU: 6
Lezioni: 48 ore
Docente: Ceravolo Paolo
Docente/i
Ricevimento:
Giovedì 14.00 - 15.00
Dipartimento di Informatica - 7° piano