Strumenti Utente

Strumenti Sito


lpr-b:start

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
lpr-b:start [27/11/2007 alle 19:24 (18 anni fa)] Marco Daneluttolpr-b:start [22/09/2009 alle 17:33 (16 anni fa)] (versione attuale) Andrea Corradini
Linea 1: Linea 1:
 ====== Laboratorio di Programmazione di Rete - corso B ====== ====== Laboratorio di Programmazione di Rete - corso B ======
-**Docenti**: [[http://www.di.unipi.it/~marcod/|Marco Danelutto]] e [[http://www.di.unipi.it/~campa/|Sonia Campa]] 
  
-[[avvisi]] +// Le comunicazioni e le pagine relative all'ultimo appello dell'anno accademico 2007-2008 sono disponibili seguendo i link sotto "Teaching" nella [[http://www.di.unipi.it/~marcod|home page]] di Danelutto: [[http://cotognata.di.unipi.it/~marcodanelutto/wiki/doku.php?id=homedidattica|pagina degli avvisi]] [[http://www.cli.di.unipi.it/doku/doku.php/lpr-b-2007-2008/start|pagina del corso A.A. 07-08]] //
- +
-===== Programma del corso ===== +
-Il corso si pone l’obiettivo di fornire le conoscenze necessarie per l'utilizzo di Socket (indirizzi, URL, socket TCP e UDP, modelli connection- oriented e connectionless, comunicazioni punto a punto, multicast broadcast, modello client/server). Saranno inoltre presentate le caratteristiche base di modelli di programmazione più ad alto livello: RMI, CORBA ed RPC. In particolare, verranno svolti esercizi utilizzando Java RMI. +
- +
-{{nswitch.jpg?130  }} +
-    * Introduzione: La programmazione di applicazioni di rete  +
-    * Paradigmi per la programmazione di applicazioni di rete  +
-    * Programmazione Programmazione con socket TCP e con socket UDP +
-    * Middleware di programmazione ad oggetti: Remote Method Invocation (RMI) +
-    * Assegnazione e discussione del progetto conclusivo del corso +
-La durata delle varie parti del corso (comprensive di lezioni frontali per il richiamo dei concetti da utilizzare, preseumibilmente già visti nel corso di reti e per l'introduzione delle API Java da utilizzare  e delle relative esercitazioni e discussione delle soluzioni) sarà di circa 6 ore per la parte iniziale, 4 ore per l'assegnazione del progetto, 15 ore per la parte sui socket e 15 ore per la parte su RMI. +
- +
- +
- +
-===== Orario di lezione ===== +
- +
-^ Giorno ^ Orario ^ Aula ^ ^  +
-| Mercoledì | 9--11 | H |  esercitazione | +
-| Venerdì | 9--11 | B | lezione (primo e secondo turno insieme) |  +
- +
-Da mercoledì 28 novembre (compreso) il mercoledì c'è un unico turno di esercitazione (9-11) +
- +
-===== Orario di ricevimento ===== +
- +
-^ Giorno ^ Orario ^ Luogo ^  +
-| Lunedì | 15--18 | Studio Danelutto (Dipartimento di Informatica) | +
-| Giovedì | 11--12 | Studio Danelutto (Dipartimento di Informatica) | +
- +
- +
- +
- +
- +
- +
-===== Materiale didattico ===== +
- +
-Il libro di testo consigliato è Java Network Programming Third Edition: October 2004 ISBN 10: 0-596-00721-3 ISBN 13: 9780596007218 Pages: 760. Questo libro è da intendersi come un manuale da consultare mentre si realizzano gli esercizi ed il progetto del corso. Non è un libro di reti. Assumeremo durante il corso che le nozioni necessarie siano fornite dal corso di Reti di Calcolatori, parallelo al corso di LPR.  +
- +
-E’ fondamentale la consultazione della [[http://java.sun.com/api|documentazione on line]] di Java. +
- +
-=== Esercizi === +
-La pagina degli [[esercizi|esercizi]] verrà regolarmente aggiornata con gli esercizi proposti nelle esercitazioni in aula HSu questa pagina verranno anche pubblicate (appena discusse a lezione) le soluzioni proposte per gli stessi esercizi +
- +
-=== Note ===  +
-Infine, sulla pagina delle [[note|note]] verranno pubblicate tutte le note di supporto al corso.  +
- +
-===== Ambiente di sviluppo ===== +
- +
-Ai fini del corso la versione di Java da utilizzare è la 1.5. Si può ovviamente utilizzare la più recente 1.6, senza però utilizzare caratteristiche “nuove”, salvo nei casi indicati esplicitamente dal docente. +
- +
-L’ambiente di programmazione consigliato è [[http://www.eclipse.org/|Eclipse]] ma al fine del superamento dell’esame è fondamentale conoscere anche il funzionamento dell’ambiente standard Java da riga di comando+
  
  
 +  * //[[.lpr-b-08:|LPR-B-08: Anno Accademico 2008-09]]//
  
 +  * **[[.lpr-b-09:|LPR-B-09: Anno Accademico 2009-10]]**
  
 +===== Prerequisiti =====
  
 +  * Laboratori dei primi due anni.
 +  * Conoscenza del linguaggio Java, versione 1.5 o superiore, incluso //packages//, //streams// ed //eccezioni//.
  
 +===== Programma del corso =====
 +Il corso si pone l’obiettivo di fornire le conoscenze necessarie per la scrittura di applicazioni di rete tramite l'utilizzo di socket (indirizzi, URL, socket TCP e UDP, modelli connection- oriented e connectionless, comunicazioni punto a punto, multicast e broadcast, modello client/server). Saranno inoltre presentate le caratteristiche base di modelli di programmazione di rete più ad alto livello, in particolare RMI.
  
-===== Lezioni ===== +  * Parte primamultithreading e socket 
-Il registro ufficiale delle lezioni è disponibile sulla [[http://unimap.unipi.it/registri/dettregistri.php?re=3723:::|pagina unimap]]+    * Programmazione concorrente in Java con thread. 
 +    * 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 secondaRMI. 
 +    * RMI. 
 +    * Utilizzo di RMI per la realizzazione di semplici servizi di rete.  
 +    * Uso di callback con RMI. 
 +  * Parte terzaProgetto. 
 +    * Assegnazione e discussione in aula del progetto conclusivo del corso. 
  
-Questi sono i lucidi utilizzati a lezione (sono tracce per l'esposizione della lezione, non sostituiscono il resto del materiale didattico!):  +===== Altre informazioni e materiale didattico ===== 
-  * {{lpr-b:1-thread.pdf| thread}} +  * //[[.lpr-b-08:|LPR-B-08Anno Accademico 2008-09]]//
-  * {{lpr-b:2-socket_tcp_ip.pdf|socket TCP/IP (introduzione)}} +
-  * {{lpr-b:javasshshell.pdf|java da riga di comando e comandi per l'esecuzione remota}} +
-  * {{lpr-b:util.concurrent.pdf| package util.concurrent}} +
-  * {{lpr-b:5-serializzazione.pdf|Object stream}} +
-  * {{lpr-b:socket_udp.pdf|Socket UDP}} +
-  * {{lpr-b:10-rmi.pdf|RMI}}+
  
-===== =====+  * **[[.lpr-b-09:|LPR-B-09: Anno Accademico 2009-10]]**
  
-Ritorna alla pagina della [[http://www.cli.di.unipi.it/doku/doku.php/lpr-b/avvisi|Didattica 2007--2008 di Danelutto]] 
  
lpr-b/start.1196191454.txt.gz · Ultima modifica: 27/11/2007 alle 19:24 (18 anni fa) da Marco Danelutto

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki