Programmazione avanzata e di rete (2008/2009)

Corso a esaurimento

Codice insegnamento
4S00024
Crediti
5
Coordinatore
Massimo Merro
L'insegnamento è organizzato come segue:
Modulo Crediti Settore disciplinare Periodo Docenti
Teoria 4 INF/01-INFORMATICA 2° Q Massimo Merro
Laboratorio 1 INF/01-INFORMATICA 2° Q Massimo Merro

Obiettivi formativi

Modulo: Teoria
-------
Nel corso verra' studiato il linguaggio JAVA RMI (Remote Method Invocation) attraverso cui e' possibile sviluppare software di rete, indipendentemente dai sistemi operativi utililizzati, e facendo uso di tutte le librerie e potenzialita' di JAVA.

Particolare enfasi verra' data alla programmazione di sistemi distribuiti client/server, in cui un server fornisce un servizio a clients che possono trovarsi dislocati su macchine remote. Verrano studiati anche esempi di sistemi peer-to-peer, in cui le entita' in gioco sono tutte allo stesso livello e tutte abilitate a richiedere e/o fornire servizi.

Verranno studiate anche applicazioni conosciute come Agenti Mobili. Tali agenti si muovono sulla rete passando di server in server alla ricerca di informazioni e risorse.

Lo sviluppo di tali applicazioni distribuite dovra' tener conto di problemi legati alla sicurezza e portabilita'.


Modulo: Laboratorio
-------
vedasi la teoria

Programma

Modulo: Teoria
-------
Il Corso studia la programmazione distribuita in JAVA RMI. Gli argomenti trattati sono essenzialmente:

- Interfacce remote
- Programmazione client/server RMI/JRMP
- Registri RMI
- Servers UnicastRemoteObject
- Sicurezza e politiche di policy
- Mobilita' di codice
- Server attivabili
- Servizi di naming JNDI
- Servers RMI/IIOP
- Confronto con CORBA.


Modulo: Laboratorio
-------
vedasi la teoria

Modalità d'esame

Modulo: Teoria
-------
Scritto e progetto da discutere con il docente


Modulo: Laboratorio
-------
vedasi la teoria