Presentazione di PowerPoint - · 40 ore circa di esercitazioni guidate in laboratorio ... 2010...
Transcript of Presentazione di PowerPoint - · 40 ore circa di esercitazioni guidate in laboratorio ... 2010...
1 Tecnologie Web T
Tecnologie Web T
Corso di Laurea in Ingegneria Informatica
A.A. 2017-2018
Presentazione del Corso
Home Page del corso: http://www-db.disi.unibo.it/courses/TW/
Versione elettronica: 0.01.Presentazione.pdf
Versione elettronica: 0.01.Presentazione-2p.pdf
Alma Mater Studiorum - Università di Bologna
Scuola di Ingegneria e Architettura
2 Tecnologie Web T
Docenti
Contatti
E-mail: {ilaria.bartolini, paolo.bellavista}@unibo.it
Telefono: 051 20 93550 (Bartolini) - 051 20 93866 (Bellavista)
Web:
http://www-db.disi.unibo.it/ibartolini/
http://lia.disi.unibo.it/Staff/PaoloBellavista/
Orario ricevimento studenti:
Venerdì ore 16-18 + previo appuntamento email, c/o Palazzina DISI,
I piano, vicino ingresso via Vallescura (Prof. Bartolini)
Lunedì ore 15:30-18 + previo appuntamento email, c/o Aule nuove, I piano,
vicino Aula 5.7 (Prof. Bellavista)
Prof. Ilaria Bartolini
Prof. Paolo Bellavista
Dipartimento di Informatica – Scienza e Ingegneria (DISI)
3 Tecnologie Web T
Tutor
Dott. Riccardo Venanzi
E-mail: [email protected]
Ricevimento studenti:
previo appuntamento via email
4
Caratteristiche generali
Nome dell’insegnamento: Tecnologie Web T
Crediti formativi: 12
Durata: 120 ore
40 ore circa di esercitazioni guidate in laboratorio
80 ore circa di lezione
Periodo: II ciclo
22 febbraio 2018 - 8 giugno 2018 • 15 settimane, inclusa sospensione per festività pasquali: [29/03/18– 03/04/18]
• sospensione lezioni 5 marzo 2018, per elezioni politiche del 4 marzo
• ponte del 1 maggio 2018
Organizzazione: diviso in due moduli, interallacciati
nel tempo e tenuti entrambi dai due docenti
Modulo I – Tecnologie e modelli di base per il Web
Modulo II – Architetture enterprise e modelli avanzati per il Web
Tecnologie Web T
5 Tecnologie Web T
Calendario del corso
Orario lezioni:
Martedì ore 9:00 - 12:30, Aula 3.4 (inizio lezione 9:15)
Mercoledì ore 9:00 - 12:30, Aula 0.1 (inizio lezione 9:15)
Orario esercitazioni:
A partire da lunedì 26 febbraio 2018
Lunedì ore 12:30 - 15:30, LAB4 (inizio esercitazione 12:30 puntuali)
6 Tecnologie Web T
Laboratorio
Il Laboratorio è parte integrante del corso!
Frequentare le esercitazioni guidate è molto
importante:
Alcune problematiche si capiscono molto meglio
mettendo in pratica i concetti teorici appresi a lezione
(programmazione di applicazioni Web)
Acquisire manualità nell'uso degli strumenti software è
fondamentale
Per saperne di più sulle regole generali di laboratorio si
prega di consultare la guida sulla homepage del corso
7 Tecnologie Web T
Contenuti
Obiettivo: fornire tutte le conoscenze e le competenze
necessarie per la progettazione e la realizzazione di
applicazioni Web-based, inquadrandole nell'ambito più
vasto delle applicazioni distribuite, focalizzando
l’attenzione sulle applicazioni “di classe enterprise” e
di interesse industriale
Competenze molto ricercate nel mondo del lavoro !
Focus: definizione dei modelli su cui questa tipologia di
applicazioni si basa, a partire da quelli più tradizionali
per arrivare alle evoluzioni recenti
Parti del corso
Web statico
Descrizione delle informazioni e XML
Web dinamico
Architetture enterprise e modelli avanzati per il Web
8 Tecnologie Web T
Prerequisiti del corso
Il Corso di Tecnologie Web T ha un forte prerequisito in
Sistemi Informativi T e Reti di Calcolatori T; naturalmente,
richiede le competenze Java acquisite nel corso di
Fondamenti di Informatica T-2
9
Programma – Modulo I. Tecnologie e modelli di base
Modello statico: interazione e protocolli Web
Modello statico: breve introduzione storica
URI e protocollo HTTP
Linguaggi di descrizione della pagina: HTML e CSS
Descrizione delle informazioni e XML
Descrizione delle informazioni: XML e XHTML
Tipizzazione di XML: DTD e XML Schema
Parser XML (modelli DOM e SAX)
Modello dinamico
Sessioni e conversazioni - Gestione dello stato
Programmazione Server Side: Servlet, JSP, Modello Java One
Programmazione Client Side: Javascript e Ajax
Tecnologie Web T
10
Modello frequente in applicazioni enterprise
Services
Business Logic
Business Flows
Presentation
I servizi devono fornire tutte le funzionalità base (API) necessarie per
l’implementazione rapida ed efficace della logica di business, dalla gestione
della concorrenza al supporto alle transazioni, dall’interfacciamento ai DB al
monitoraggio/controllo/gestione delle performance
La logica di business contiene le caratteristiche delle applicazioni e
dipende sia dal modello dei dati che, ancora più rilevante, dalle logiche
di utilizzo degli stessi
A questo livello vengono implementati i flussi delle diverse
conversazioni che interagiscono per comporre una applicazione
Livello di presentazione si occupa della visualizzazione dei risultati
generati secondo il percorso definito nel flusso sottostante
Tecnologie Web T
11
Programma - Modulo II. Applicazioni enterprise
Introduzione alle architetture enterprise
Servizi – l’esempio notevole della gestione della persistenza
Accesso diretto a basi dati: interfacce e astrazioni
Architetture a oggetti e database relazionali: conflitto d'impedenza
Metodologie di progettazione e sviluppo della persistenza dei dati: JDBC, DAO, ORM - Entity Beans e Hibernate
Servizi – modelli transazionali
Gestione delle transazioni e livelli di isolamento
Component container
Modello container pesante - EJB
Modelli a inversione di controllo e dependency injection
Modelli container leggero – Spring
Business logic
Controllo di flusso (business flow)
Il modello Java 2 – MVC Controller e Spring MVC
Presentazione (alternative a tecnologia JSP)
Cenni di Java Server Faces – Facelet
Evoluzione verso HTTP/2 (WebSocket, SPDY, eventi e node.js)
Tecnologie Web T
12 Tecnologie Web T
Home Page del corso
Contiene:
Copia dei lucidi in
formato PDF
Guida al lab
Strumenti software e
link utili
Testi e soluzioni
delle esercitazioni
svolte in lab
Appelli d’esame
Testi di prove
d’esame
Regole d’esame
Bibliografia
Avvisi
…
http://www-db.disi.unibo.it/courses/TW/
13 Tecnologie Web T
Testi consigliati (1/2)
Per sostenere l'esame è sufficiente il materiale reso disponibile sul sito
Per chiunque voglia comunque avere a disposizione delle fonti in cui gli argomenti trattati a lezione vengono svolti in maniera più estesa, sono consigliati i seguenti testi e/o link (molte altre alternative sono comunque disponibili):
V. Della Mea, L. Di Gaspero, I. Scagnetto, Programmazione Web Lato Server, 2a edizione, Apogeo, 2011
V. Roberto, M. Frailis, A. Gugliotta, P. Omero, Introduzione alle Tecnologie Web, McGraw-Hill, 2010
W3C, HTML, CSS, JavaScript
World Wide Web Consortium: http://www.w3.org
HTML Specifications: http://www.w3.org/TR/html4/, https://www.w3.org/TR/html5/
World Wide Web Consortium CSS Reference: http://www.w3.org/Style/CSS/
JavaScript Guide: http://www.w3schools.com/js/default.asp
14 Tecnologie Web T
Testi consigliati (2/2)
XML
E.R. Harold, W.S. Means, XML in a Nutshell, 3rd ed., O'Reilly, 2004
XML: http://www.w3.org/XML/
Architetture Enterprise
A.L. Rubinger, B. Burke, Enterprise JavaBeans 3.1, 6th ed., O’Reilly, 2010
B. McLaughlin, Building Java Enterprise Applications, Vol. I: Architecture,
1st ed., O’Reilly, 2002
J2EE: http://java.sun.com/javaee/reference/
Tomcat: http://tomcat.apache.org/
Spring e Hibernate
C. Walls, Spring in Action, 3rd ed., Manning, 2011
Spring: http://www.springsource.org/
C. Bauer, G. King, Java Persistence with Hibernate, 2nd ed., Manning, 2006
15 Tecnologie Web T
Modalità di esame
L'esame consiste di una prova pratica (in laboratorio) e
di un colloquio orale da svolgersi all'interno dello
stesso appello d'esame. Chi supera la prova pratica
viene ammesso all'orale.
Inoltre: L'ammissione all'esame è subordinata all'iscrizione obbligatoria tramite
AlmaEsami e all'attivazione del proprio account di facoltà
L'iscrizione è da considerarsi vincolante
La consegna dell'esame avviene in modalità telematica, mediante
l'applicativo Web Esamix
In sede di esame è possibile consultare testi, dispense, appunti, ecc.
I risultati delle prove vengono esposti sul sito Web del corso
La verbalizzazione del voto acquisito avviene al termine della sessione dei
colloqui orali, presso lo studio della Prof. Bartolini
A partire dall'A.A 2011/2012, il voto ha validità solo all'interno
dell'A.A. in cui lo stesso è stato acquisito, ovvero entro il 31 ottobre
dell'A.A. di riferimento (per l’A.A. 2017/2018, la scadenza è il 31/10/2019)
16 Tecnologie Web T
Appelli d’esame
Sono previsti sei appelli d’esame all’anno
tre appelli nella sessione estiva
un appello nella sessione autunnale
(a settembre)
e due appelli in quella invernale
(tra gennaio e febbraio)
Durante il corso esamineremo insieme alcuni
esempi di prove d’esame
È inoltre prevista una esercitazione in laboratorio
dedicata alla “simulazione” di prova d’esame