Teoria
Architettura di rete e formati per lo scambio dei dati
- I sistemi distribuiti – I sistemi distribuiti • Classificazione dei sistemi distribuiti.
- Evoluzione dei sistemi distribuiti e dei modelli architetturali – Architetture distribuite hardware e software • Architettura a livelli.
- La comunicazione nel Web con protocollo HTTP – Il protocollo HTTP • Tipi di connessioni • I messaggi HTTP • Funzionamento di HTTP • Sicurezza a livello di trasporto e di applicazione: HTTPS.
- Le applicazioni Web e il modello client-server – Applicazioni Web: generalità • Il modello client-server • Livelli e strati.
- Le applicazioni di rete – Il modello ISO/OSI e le applicazioni • Applicazioni di rete • Scelta dell’architettura per l’applicazione di rete • Servizi offerti dallo strato di trasporto alle applicazioni.
I socket e la comunicazione con protocolli TCP/IP
- I socket e i protocolli per la comunicazione di rete – Generalità • Le porte di comunicazione e i socket.
- La connessione tramite socket – Generalità • Famiglie e tipi di socket • Trasmissione unicast e multicast.
Applicazioni lato server in PHP
- Classi in PHP – Generalità su PHP • Il paradima a oggetti in PHP.
- La connessione al database MySQL – La connessione al database MySQL.
- Sicurezza delle applicazioni lato server – SQL Injection • Cross Site Scripting • XPath Injection.
Applicazioni lato server con codice separato: CGI e servlet
- Le applicazioni lato server – La programmazione server-side • Modello a codice separato • Struttura di una servlet • La classe HttpServlet • Ciclo di vita di una servlet • Output sul client • Deployement di un’applicazione Web • Il Context XML descriptor o Deployement descriptor • Esecuzione di una servlet.
- Servlet e database – La connessione ai database • La connessione con JDBC Java Database Connectivity • Servlet con connessione a MySQL.
I web service
- Introduzione ai Web Service: protocolli SOAP e REST – Web Service • Il protocollo SOAP • Il protocollo REST
Laboratorio
- Il linguaggio XML – Lo schema DTD delle pagine XML • La navigazione dei documenti con XML Path Language.
- Il formato JSON.
- Java socket: realizzazione di un client e di un server TCP. Il protocollo UDP nel linguaggio Java.
- Progettazione e codifica di semplici applicazioni lato server in PHP. Connessione a MySQL in PHP con la OO MySQLi.
- Sicurezza delle applicazioni: esempi di codice vulnerabile e patchato.
- Applicazioni CGI.
- XAMPP e il server Engine Tomcat.
- Servlet. L’interazione get/post tra client e servlet.
- La permanenza dei dati con le servlet: i cookie e le sessioni.
- JDBC E MySQL.
- Realizzazione di un Web Service SOAP/REST in PHP.
Materia di approfondimento
Non disponibile