| | | | corso | | |
Laboratorio di programmazione di rete B
Codice: | AA018 | Crediti: | 6 | Semestre: | 1 | Sigla: | LPR | |
|
Settore disciplinare: | INF/01 - Informatica |
Docente
Marco Danelutto
Tel. 0502212742Prerequisiti
Laboratori del primo e secondo anno, conoscenza del linguaggio di
programmazione Java.
Obiettivi di apprendimento
Fornire le basi sulle tecniche di programmazione di applicazioni di
rete con gli strumenti tipici dell'ambiente Internet/Java (Socket,
RMI).
Descrizione
Il corso si propone di fornire le conoscenze di base necessarie per la
realizzazione di (semplici) applicazioni di rete (applicazioni WEB,
per file transfer, di posta elettronica,
chat, etc.)
In particolare, si forniranno le conoscenze
necessarie per l'utilizzo di Socket (indirizzi, socket TCP, socket
UDP, modelli connection-oriented e connectionless, comunicazioni punto
a punto e multicast/broadcast, modello cient/server).
Verranno inoltre presentate le caratteristiche base di modelli di
programmazione più ad alto livello, tipicamente RMI/CORBA/RPC. In
particolare verranno svolti esercizi utilizzando lo RMI primitivo di
Java.
English Description
The course aims to provide the basic knonwledge necessary to develop
(simple) network applications (WEB, file transfer, email, chat,
etc.).
In particular, the knowledge necessary to use sockets
(addresses, TCP and UDP sockets, connection-oriented and
connectionless models, point to point and multicast/broadcast
communications, client/server model) will be provided.
Furthermore, the basic features of higher level programming models
(RMI/CORBA/RPC) will be discussed; exercises will be given that use
the primitive RMI Java mechanism.
Programma
Parte prima: socket
- Modello client/server, server seriali e concorrenti.
- Socket (lato cliente e lato servente) con TCP con indirizzi visti
come coppie nomehost,numeroporta.
- Accesso a servizi standard
- Realizzazione di semplici server concorrenti e non
- Indirizzi Inet
- UDP
- Accesso a servizi standard
- Port scanning
- Utilizzo di multicast
- Implementazione di livelli diversi di affidabilità sopra UDP
Parte seconda: RMI
- RMI
- relazioni con CORBA/RPC
- Utilizzo di RMI per la realizzazione di semplici servizi di rete
Parte terza: Progetto
- Assegnazione e discussione in aula del progetto conclusivo del corso
Bibliografia
- Harold JAVA Network Programming 2nd edition ÒReilly
2001 (ne esiste anche una versione tradotta in italiano presso
Jackson, relativa alla prima edizione del testo. Sebbene meno
completa, copre praticamente tutti gli argomenti trattati nel corso).
- consultazione Huges et al. JAVA Network
Programming Manning (il testo è da considerarsi come un manuale
da tenere sulla scrivania durante la realizzazione di applicazioni di
rete)
Modalità di esame
Scritto e orale