OBIETTIVO DEL CORSO
L'obiettivo del corso è quello di presentare in modo intuitivo i
protocolli della rete Internet
con particolare riferimento ai protocolli del
Livello Applicativo.
Verranno inoltre introdotti alcuni
linguaggi di script per la
generazione di pagine web interattive e dinamiche, e i
cookies
e le
sessioni per mantenere lo stato della connessione HTTP.
Infine, parleremo di
usabilità e
accessibilità dei siti web e,
molto brevemente, di
progettazione multibrowser mediante l'uso di XML e
trasformazioni XSLT.
In queste pagine trovate alcune
informazioni generali sul corso (ad esempio,
le
date degli appelli), e il
programma dettagliato.
Per ogni lezione trovate una breve intrdoduzione all'argomento trattato, i lucidi usati a lezione e,
in molti casi, esercizi e puntatori a risorse esterne.
|
Informazioni generali sul corso
Programma dettagliato
Date degli appelli e scritti degli esami passati
|
|
Docente
Prof. Marina Ribaudo
(email: ribaudo@disi.unige.it)
|
|
Orario delle lezioni
Martedì ore 14:00-16:00 aula 710
Giovedì ore 9:00-11:00 aula 710
|
|
Orario di ricevimento
Mercoledì ore 14:00-16:00
Ufficio num. 231
|
|
Prerequisiti
HTML e SQL (oltre naturalmente a nozioni di programmazione)
|
|
Alcuni testi di riferimento
- Per la programmazione client-side
JavaScript. The Definitive Guide, David Flanagan (O'REILLY)
[versione italiana: JavaScript: la Guida, David Flanagan (APOGEO)]
- Per la programmazione server-side
PHP and MySQL Web Development, Luke Welling and Laura Thomson, SAMS
- Per la parte sui protocolli vi suggerisco il libro di Kurose e Ross ma vanno
bene anche altri libri di testo
- Computer Networking: A Top-down Approach Featuring the Internet, James Kurose, Keith Ross
È uscita la versione italiana di questo libro:
Internet e Reti di calcolatori (seconda edizione), Kurose, Ross McGraw Hill.
- Computer Networks, Andrew Tanenbaum
- Per la parte di usabilità
- Designing Web Usability: The Practice of Simplicity, Jakob Nielsen
- L'usabilità dei siti Web, Michele Visciola (APOGEO)
- Altri testi e link a manuali on line verranno segnalati durante il corso.
|
|
Modalità di esame
Esame orale (ma svolto mediante una breve prova scritta su argomenti teorici)
cui si aggiunge una prova di laboratorio che consiste nella progettazione di
un sito web dinamico, ottenuto mediante interazione con un database residente su
un server remoto (il progetto può essere fatto singolarmente o in coppia).
Per ogni progetto si dovrà definire un elenco di 10 (o più) linee guida
che sono state seguite durante la realizzazione per ottenere un sito usabile.
|
Programma dettagliato
IMPORTANTE
In molte lezioni trovate i sorgenti degli esempi visti in aula.
Come scritto più volte, ricordate che essi non costituiscono
l'unica soluzione ma una possibile soluzione.
Il copy & paste per il progetto di
laboratorio è lecito ma vi suggerisco di capire gli esempi
prima di copiarli e, soprattutto, di cercare di migliorarli perchè
nei miei esempi c'è quasi sempre ampia possibilità per farlo ...
- Introduzione al corso di Applicazioni di Rete
- Ripasso su HTML (2 lezioni)
- Fogli di stile
- Programmazione client-side
- JavaScript (core language)
- JavaScript (client side)
- Esercitazione 1: JavaScript
- JavaScript: il DOM
- Esercitazione 2: JavaScript
- JavaScript: gestione dei moduli
- Esercitazione 3: JavaScript
- Il livello applicativo e HTTP
- Programmazione client-side
- Esercitazione 4: JavaScript
- Programmazione server-side
- Introduzione a PHP
- Introduzione a MySQL e accesso a dati remoti
- Salvare lo stato: cookies e sessioni
- Esercitazione 5: cookies in PHP
- Alcuni cenni su (1) sicurezza e (2) usabilità
- Esercitazione 6: interazione con MySQL
- Protocolli del livello applicativo: FTP, SMTP, ...
- Esercitazione 7: variabili di sessione
- DNS; il livello transport e TCP
- Il livello network e IP
- XML: introduzione
- Trasformazioni XSLT
FINE CORSO
|