| | | corso | | | | |
Laboratorio di applicazioni internet
Codice: | AA051 | Crediti: | 6 | Semestre: | 2 | Sigla: | ISI | |
|
Settore disciplinare: | INF/01 - Informatica |
Docente
Tito Flagella

Obiettivi di apprendimento
Il corso introduce le principali architetture, protocolli e strumenti di sviluppo per la realizzazione di Applicazioni Internet. Permettere inoltre agli studenti di esercitarsi nell'uso degli stessi in una serie di esercitazioni assistite ed in un progetto didattico completo.
Conoscenze. Lo studente acquisirà conoscenze sui principali protocolli e linguaggi utilizzati su Internet (in particolare su http), e sulle modalità architetturali con cui un’applicazione Internet vada progettata.
Capacità. Lo studente saprà utilizzare i vari middleware e API necessari per la realizzazione di un’applicazione Internet completa in ambiente java (servlet API, jsp, JDBC, etc.), oltre a gli strumenti per l’interoperabilità con applicazioni terze (CORBA e Web Services).
Comportamenti. Lo studente saprà operare nella progettazione e nel tracciamento diagnostico di eventuali problemi applicativi, indipendentemente dagli specifici wizard e ambienti di programmazione, che tipicamente nascondono molte delle problematiche di realizzazione e di integrazione, costringendo poi lo sviluppatore a dipendere dallo specifico ambiente utilizzato
Descrizione
Indicazioni metodologiche
Per conseguire gli obiettivi
indicati nel tempo a disposizione, sarà necessario:
-
realizzare lezioni non soltanto
teoriche, ma anche condotte come analisi a "run time" di applicazioni reali,
che evidenzino le problematiche di integrazione trattate di volta in volta.
-
Realizzare esercitazioni in
Laboratorio che permettano agli studenti di superare le difficoltà d'uso dei
tanti nuovi strumenti analizzati.
Programma
Introduzione
- L'evoluzione delle architetture software:
dai mainframe al client/server a multi-tier/Internet
- L'impatto dei Firewall sulla progettazione
delle applicazioni Internet
Primo Livello Applicativo (Browser)
Introduzione
alle tecnologie di base:
- il protocollo http
- richiami dei linguaggi html, javascript e
xml
- applet java
Secondo Livello Applicativo (Web Server)
- Il Web server come base dell'Application
Server
- Introduzione alle web server extension:
CGI, ISAPI, NSAPI, ASP, Servlet, JSP, PHP.
- Approfondimenti sulla Servlet API
- Introduzione a Java Template Engine: uso
di JSP come template engine
- Interazione Client/Server: comunicazione
Applet/Servlet tramite serializzazione di oggetti java su http
- Session Management: Uso delle sessioni per
il riconoscimento delle transazioni http
Terzo Livello Applicativo (Back-End)
- Richiami sulla programmazione di
transazioni su RDBMS
- L'uso di JDBC per l'accesso a Database da
Servlet
- L'uso di connection pools nelle
Applicazioni Internet
Ulteriori Livelli Applicativi (Business Objects e Web Services)
- Introduzione agli ORB e alle problematiche
di integrazione tra applicazioni diverse
- L'architettura CORBA/IDL
- L'architettura SOAP/WSDL
Le problematiche di Sicurezza su Internet
Richiami ai
concetti di base:
- Insicurezze di Internet
- L'impatto ambientale dei Firewall sulla
progettazione delle applicazioni Internet
- Certificati Digitali e standard X/509
- Richiami sull'uso dei Protocolli SSL/TLS e
HTTPS
-
La programmazione SSL in Java: JSSE
Ore lezione: | 24 | Ore esercitazione: | 24 | | | |
Bibliografia
reperibile alla pagina web del corso
Modalità di esame
La valutazione avverrà tramite la valutazione di progetti svolti dagli studenti autonomamente o in gruppi di due.