Il corso si propone di fornire una preparazione completa sulle tecnologie necessarie allo sviluppo di applicazioni web moderne, conformi agli standard e sicure, con particolare riguardo anche per le problematiche di accessibilità e usabilità

Sillabo

  1. Web Standards. Accessibilità e Usabilità: cosa significano e come si realizzano. Web Content Accessibility Guidelines (WCAG). XML e i linguaggi markup. (circa 4 ore di lezione)
  2. Struttura dei contenuti web: HTML4, XHTML1, HTML5. Uso corretto dell'HTML e accorgimenti per la compatibilità crossbrowser. Creazione di HTML accessibile. Accessibilità nelle Rich Internet Applications (RIA). Validazione dei contenuti web. (circa 6 ore di lezione)
  3. Presentazione dei contenuti web: CSS2 e CSS3. Uso corretto dei fogli di style e accorgimenti per la compatibilità crossbrowser. Creazione di fogli di stile degradanti. (circa 4 ore di lezione)
  4. Creazione di layout web con i fogli di stile: tecniche di base. Responsive design. (circa 4 ore di lezione)
  5. Logica per i contenuti web, lato server: Java Servlets. Gestione delle sessioni nelle applicazioni web Java. Database nelle applicazioni web Java: JDBC, connection pooling. Generazione dinamica dei contenuti: template engines per Java. Sicurezza delle applicazioni web: accorgimenti lato server. (circa 20 ore di lezione)
  6. Logica per i contenuti web, lato client: Javascript. Javascript come linguaggio di programmazione object-oriented. Il Document Object Model di HTML. Il Document Object Model dei CSS. Il modello degli eventi HTML. Manipolazione del DOM con Javascript. Rich User Interaction degradante con Javascript e CSS. AJAX. (circa 10 ore di lezione)

Prerequisiti

I prerequisiti indicano le conoscenze necessarie a una corretta fuizione del corso. Non si tratta di propedeuticità formali, in quanto le conoscenze qui elencate potrebbero provenire da insegnamenti diversi e anche dall’esperienza personale.

Conoscenza di base della programmazione Java

Metodi didattici

Le lezioni sono di carattere teorico e pratico, e prevedono lo sviluppo interattivo di esempi in aula; gli studenti sono incoraggiati a partecipare alle lezioni facendo domande e discutendo le soluzioni adottate negli esempi sviluppati

Verifica dell’apprendimento

La valutazione finale prevede lo sviluppo (in gruppo) di un progetto e un’eventuale prova orale (individuale). Il progetto da sviluppare consiste in un’applicazione web completa. La prova orale parte dalla discussione del progetto e ha lo scopo di verificare il livello collaborazione nel gruppo e il contributo individuale al progetto