Conoscenza e capacità di comprensione (knowledge and understanding): verrano acquisite conoscenza e comprensione dei fondamenti concettuali (nozioni di base e architetturali, principali classi di problemi) su cui poggiano le soluzioni di impiego corrente per lo sviluppo dei sistemi distribuiti e, in particolare, delle applicazioni web lato server.
Capacità di applicare conoscenza e comprensione (applying knowledge and understanding): lo studente sarà in grado di impiegare soluzioni e paradigmi appresi nel corso, in modo da costituire un efficace bagaglio di competenze, necessarie per la progettazione di sistemi distribuiti e applicazioni Web lato server.
Autonomia di giudizio (making judgements): lo studente sarà in grado di valutare comparativamente i meriti e i limiti delle soluzioni di impiego corrente, nell'industria del software, per le problematiche e gli scenari tipici della progettazione distribuita e Web (lato server).
Abilità comunicative (communication skills): lo studente apprenderà terminologia e paradigmi specifici dei sistemi distribuiti e dello sviluppo Web lato server e acquisirà le abilità comunicative appropriate per esprimere e discutere, ad un livello tecnico rigoroso, le problematiche di interesse.
Capacità di apprendimento (learning skills): lo studente sarà in grado di documentarsi e approfondire le proprie conoscenze mediante la consultazione delle fonti disponibili (libri di testo e/o risorse on line), eventualmente applicando le informazioni acquisite in contesti concreti.
Consigliata, per il raggiungimento di una piena comprensione del materiale presentato.
Verranno presentati, a livello di concetti, paradigmi e aspetti architetturali, i seguenti argomenti:
Tutto il materiale presentato a lezione verrà reso disponibile sul portale Studium.
TECNOLOGIE PER I SISTEMI DISTRIBUITI E IL WEB | ||
Argomenti | Riferimenti testi | |
1 | Introduzione ai sistemi concorrenti e distribuiti e al corso. | 1 |
2 | Socket: introduzione e system call principali. | 1 |
3 | Socket: Cliente di esempio. Semantica di read() e write(). Socket non bloccanti. | 1 |
4 | Socket: Indirizzi IP e delle socket. DNS e interfaccia la resolver. | 1 |
5 | Socket: Comunicazione connectionless. send() e receive(). | 1 |
6 | Socket in linguaggio Java. | 1,2,3 |
7 | Java: Remote Method Invocation | 2,3 |
8 | Remote Procedure Call in C | 1 |
9 | Java Servlet: concetti | 1,4 |
10 | Web Application: principi e concetti | 1,4 |
11 | Web services: SOAP | 1 |
12 | Web services: REST con JSON | 1 |
Discussione orale degli argomenti del corso a partire dalla correzione della prova di laboratorio.