PROGRAMMAZIONE DISTRIBUITA

Vittorio SCARANO PROGRAMMAZIONE DISTRIBUITA

0512100021
DIPARTIMENTO DI INFORMATICA
CORSO DI LAUREA
INFORMATICA
2014/2015



OBBLIGATORIO
ANNO CORSO 3
ANNO ORDINAMENTO 2008
PRIMO SEMESTRE
CFUOREATTIVITÀ
648LEZIONE
Obiettivi
IL CORSO HA L’OBIETTIVO DI APPROFONDIRE GLI ASPETTI RELATIVI ALLA PROGRAMMAZIONE DISTRIBUITA E LA COMUNICAZIONE TRA OGGETTI REMOTI AD UN LIVELLO MEDIO-ALTO. IL CORSO MISCELA INSIEME UNA PARTE DI BASE E UNA APPLICATIVA. NELLA PARTE DI BASE VENGONO PRESENTATE LE ARCHITETTURE DISTRIBUITE E LE PROBLEMATICHE INERENTI, MENTRE IN QUELLA APPLICATIVA VIENE PRESENTATA LA ARCHITETTURA DI JAVA REMOTE METHOD INVOCATION E VENGONO PRESENTATE ALCUNE SEMPLICI APPLICAZIONI IN JAVA. IL CORSO È PROGETTATO IN MANIERA DA GUIDARE LO STUDENTE A PROGETTARE E IMPLEMENTARE SEMPLICI APPLICAZIONI DI CHAT CON SOCKET TCP, CON DATAGRAM SOCKET MULTICAST UDP, CON JAVA RMI E CON JAVA RMI/IIOP, FOCALIZZANDO LA ATTENZIONE SULLE SPECIFICHE ARCHITETTURE, STRUMENTI E TECNICHE DA USARE. VENGONO ANCHE PRESENTATE ALCUNE SEMPLICI APPLICAZIONI CLIENT-SERVER E PEER2PEER.

CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE:
IL CORSO HA COME OBIETTIVO QUELLO DI RENDERE LO STUDENTE CAPACE DI PROGETTARE E SVILUPPARE SEMPLICI APPLICAZIONI DISTRIBUITE BASATE SU JAVA REMOTE METHOD INVOCATION.

ABILITÀ COMUNICATIVE:
GLI STUDENTI ACQUISIRANNO LA CAPACITÀ DI DESCRIVERE, PROGETTARE E SVILUPPARE APPLICAZIONI DISTRIBUITE CON PROPRIETÀ DI LINGUAGGIO.

AUTONOMIA DI GIUDIZIO:
GLI STUDENTI SARANNO GUIDATI NELL'APPRENDIMENTO CRITICO E RESPONSABILE DELLE ATTIVITÀ DI CLASSE E NELL' ARRICCHIMENTO DELLE PROPRIE CAPACITÀ DI ANALISI E SINTESI ATTRAVERSO LO STUDIO DI OPPORTUNO MATERIALE CHE IL DOCENTE PROPORRÀ AL FINE DI STIMOLARE L'AUTONOMIA DI GIUDIZIO DEGLI STUDENTI.
Prerequisiti
LO STUDENTE DEVE AVERE ACQUISITO CONOSCENZE SULL’ARCHITETTURA DELLE RETI E SUI PROTOCOLLI TCP/IP E SULLA PROGRAMMAZIONE CLIENT/SERVER. LO STUDENTE DEVE AVERE ANCHE ESPERIENZA DI PROGRAMMAZIONE IN JAVA E DI UTILIZZO SIGNIFICATIVO DI INTEGRATED DEVELOPMENT ENVIRONMENT.

Contenuti
PARTE DI BASE
•COMPUTAZIONE DISTRIBUITA E SISTEMI DISTRIBUITI. ARCHITETTURE, REMOTE PROCEDURE CALL, DISTRIBUTED OBJECT COMPUTING, IL MIDDLEWARE, I REQUISITI DI UN SISTEMA DISTRIBUITO, LA TRASPARENZA DI UN SISTEMA DISTRIBUITO.
•ARCHITETTURA CLIENT-SERVER E PEER2PEER.
•OGGETTI DISTRIBUITI. DAI SOCKET AGLI OGGETTI DISTRIBUITI. LA TRASPARENZA DEL MODELLO.
•APPLICAZIONI A COMPONENTI DISTRIBUITE (CENNI). COMPONENT TRANSACTION MONITOR E APPLICATION SERVER. PRINCIPI ED OBIETTIVI DI JAVA 2 ENTERPRISE EDITION.

PARTE APPLICATIVA
•METODI E TECNICHE PER IL DEBUGGING, E DEBUGGING IN ECLIPSE. EXTREME PROGRAMMING E JUNIT.
•PROGRAMMAZIONE MULTITHREAD IN JAVA (CENNI).
•SOCKET TCP E MULTICAST IN JAVA.
•JAVA REMOTE METHOD INVOCATION: SCOPI, ARCHITETTURA, ALCUNI PATTERN (FACTORY, CALLBACK), DOWNLOAD DINAMICO DELLE CLASSI
•PROGETTAZIONE E IMPLEMENTAZIONE DI SEMPLICI APPLICAZIONI (CHAT) IN CLIENT-SERVER E PEER2PEER.
•JAVA RMI-IIOP E JNDI.
Metodi Didattici
IL CORSO DI PROGRAMMAZIONE DISTRIBUITA COMPRENDE UNA PARTE DI BASE IN CUI VENGONO SPIEGATI I PRINCIPI DEL CALCOLO DISTRIBUITO E DEL MIDDLEWARE E DI UN PARTE PRATICA IN CUI VENGONO ILLUSTRATI DIVERSI ESEMPI DI APPLICAZIONI DISTRIBUITE IN JAVA.
Verifica dell'apprendimento
SEI APPELLI DISTRIBUITI NEL CORSO DELL’ANNO ACCADEMICO, OLTRE A DUE APPELLI RISERVATI AGLI STUDENTI FUORI CORSO. PER OGNI APPELLO È PREVISTA UNA PROVA SCRITTA ED UNA PROVA ORALE. IL VOTO VIENE CALCOLATO CON UNA MEDIA PESATA DEI VOTI DELLE DUE PROVE SOSTENUTE. DURANTE IL CORSO SI TERRANNO DUE PROVE INTERCORSO (UNA A METÀ DEL CORSO ED UNA ALLA FINE), RISERVATE AGLI STUDENTI CHE SEGUONO REGOLARMENTE IL CORSO, CHE ESONERANO DALLA PROVA SCRITTA
Testi
•VITTORIO SCARANO “PROGRAMMAZIONE CON OGGETTI DISTRIBUITI”, ACQUISTABILE ONLINE A HTTP://ILMIOLIBRO.KATAWEB.IT/SCHEDALIBRO.ASP?ID=399705
Altre Informazioni

SUL SITO SONO DISPONIBILI SCHEMA DELLE LEZIONI, TRACCE DI ESAMI E ALTRO MATERIALE DI SUPPORTO (MANUALI DI PROGRAMMAZIONE, TUTORIAL, ARTICOLI, ETC.).
HTTPS://SITES.GOOGLE.COM/A/UNISA.IT/INFORMATICASCARANODIDATTICA/PROGRAMMAZIONE-DISTRIBUITA
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2016-09-30]