Esame di Reti di Calcolatori LS Andruccioli Daniele 171701.

Slides:



Advertisements
Presentazioni simili
Gli ipertesti del World Wide Web Funzionamento e tecniche di realizzazione a cura di Loris Tissìno (
Advertisements

Tipi di dato astratti Lista, Pila, Coda, Albero.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D1 Architetture di rete.
PHP.
Algoritmi e Programmazione
1 Astrazioni sui dati : Specifica ed Implementazione di Tipi di Dato Astratti in Java.
Liste di Interi Esercitazione. Liste Concatenate Tipo di dato utile per memorizzare sequenze di elementi di dimensioni variabile Definizione tipicamente.
Liste Ordinate 3 Maggio Ultima Lezione Abbiamo visto i tipi di dato astratti IntList e StringList Realizzano liste di interi e di stringhe Realizzati.
Esercitazione con socket
JAVASCRIPT DIFFERENZA TRA JAVASCRIPT E JAVA TAG LO SCRIPT OGGETTI LE CLASSI FUNZIONE GESTORE DI EVENTI ELEMENTI DEL LINGUAGGI è un vero e proprio linguaggio.
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Laurea.
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Laurea.
Corso di PHP.
Reti di Calcolatori LS Universitá degli Studi di Bologna Remotizzazione del Framework Unibo-env Autrice: Leticia Riestra Ainsua.
Un sistema software per la vendita di prodotti on-line Università degli studi di Bologna Facoltà di ingegneria Reti di calcolatori L-S Studente: Rinaldi.
Progetto Di Uninfrastruttura Che Permetta La Modifica Di Dati Condivisi Distribuiti Su Più Nodi Reti di calcolatori L-S Gozzi Daniele
BlueMar k Sistema di Proximity Marketing con QoS ed availability Progetto per il Corso di Reti di Calcolatori LS Nicola Bonoli - 27 Giugno 2007.
Supporto allassistenza da remoto Sacchetti MauroMatr Prof. Antonio Corradi Progetto di Reti di Calcolatori LS.
1 Packet Manager Sistema di gestione di pacchetti software per il progetto dell'esame di Reti di Calcolatori LS Progetto realizzato da Fabio Parisini.
Reti di Calcolatori L-S Un Sistema Decentrato di Allocazione del Carico per Applicazioni di Calcolo Distribuito Mauro Bampo.
Distributed File System Service Dario Agostinone.
Meteo Service Corso di Reti di Calcolatori LS Casarini Stefano matr
Introduzione alla modellazione di sistemi interattivi
File ad accesso casuale o random
1 Reti di Calcolatori LS Prof. Antonio Corradi Progetto: Giombi Giorgio e Soffritti Luca Presentazione: Giombi Giorgio FotoContest Il primo servizio interamente.
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
BROKER SERVER Progetto di Ingegneria del Web 2008 Alessio Bianchi Andrea Gambitta Giuseppe Siracusano.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Writer: Stili Modelli Lezione 03. Modelli di formato e modelli di documento Modelli di formato: Sono gli stili attribuiti al carattere, al paragrafo alle.
1 Videopoker esempio di applicazione in java. 2 Videopoker Un giocatore, con un portofaglio iniziale il giocatore punta il banco da 5 carte il giocatore.
Si vuole realizzare una classe Java PhotoGallery che rappresenta una galleria di fotografie online. Ogni PhotoGallery ha una url (rappresentata da una.
1 Un esempio con iteratore: le liste ordinate di interi.
Laboratorio di Servizi Web - servlet - Ardissono 1 Java Servlet API package javax.servlet: include classi e interfacce di gestione di servlet indipendenti.
Reti di calcolatori LS Enrico Pirazzini SSB un middleware basato su JMS per l'invocazione di servizi remoti.
Introduzione a Javascript
Esercitazione su Vector. Permette di definire collezioni di dati generiche, che sono in grado di memorizzare elementi di ogni sottotipo di Object Definito.
AlgoLab - Pile e Code Pile e code Laboratorio di Algoritmi 02/03 Prof. Ugo de’ Liguoro.
Ugo de'Liguoro - Informatica 2 a.a. 03/04 Lez. 7 Tipi di dato e strutture dati Specifica e realizzazione di strutture informative come classi.
Dal click alla pagina web... Centro di Calcolo Corso Internet 22 Novembre 1996 Stefano Bistarelli Università di Chieti-Pescara “G. D’Annunzio” Dipartimento.
Producer – Consumer System Di Carlo Matteo CdLS Ingegneria Informatica (0234) Reti di Calcolatori LS A.A. 2004/2005.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Progetto di: Daniele De Angelis Corso di: Reti di Calcolatori LS Un sistema fault tolerance per protocollo Diffie-Hellman.
Liste di Interi Esercitazione. Una variante Liste concatenate di Integers Non modificabile Costruttori per creare la lista vuota o un nodo Metodi d’istanza.
Ripasso su Java. Introduzione Per risolvere problemi complessi, i linguaggi di programmazione forniscono costrutti per realizzare nuove funzioni che trasformino.
Sistema di replicazione master-multislave con server di backup per un servizio di chat di Marco Andolfo matr
PROTOTIPO DI UN GIOCO DI STRATEGIA IN RETE Alberto Buccella Università degli studi di Bologna Facoltà di Ingegneria Corso di Ingegneria Informatica.
1 Gerarchie e polimorfismo: liste. 2 Generalizzare le liste di interi  List 4 lista di oggetti –non modificabile 4 vorremo poi definire un sottotipo.
1 Laboratorio di Introduzione alla Programmazione §II MODULO §3 crediti §Esame e voto unico (su 6 crediti totali)
Search Engine Distribuito e Replicato Corso di Reti di Calcolatori LS Andrea Boari –
Chat-quiz Reti di Calcolatori L-S AA. 2003/2004 Rossella Rubino.
Servizio di newsgroup con replicazione dei server Studente: Letizia Cheng Cheng Sun Matricola: Reti di Calcolatori LS – Prof. A. Corradi A.A. 2003/2004.
Progetto di un Gestore di Nomi Corso di Reti di Calcolatori L-S prof. Antonio Corradi A.A 2003/2004 Autore: Molesini Ambra.
Reti di calcolatori LS1 Service Middleware Reti di calcolatori LS progetto di Andrea Belardi Infrastruttura dedicata alla gestione di servizi disponibili.
Sommario Oggetti immutabili e non Tipi Primitivi: String, Arrays.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Progetto e Realizzazione di un servizio di Chat Progetto di: Nicoli Leonardo Corso di: Reti di Calcolatori L-S.
1 Laboratorio di Introduzione alla Programmazione §II MODULO §3 crediti §Esame e voto unico (su 6 crediti totali)
Reti di Calcolatori LS - Fabio Poli 15 Giugno 2006 Sviluppo di un player di Campo Minato multigiocatore con supporto di Chat MultiCast.
Servizio di visualizzazione da remoto e condivisione di album fotografici Autore: Chiarini Mattia matricola
LIP: 11 Maggio 2007 Classi Astratte. Cos’e’ una Classe Astratta una classe astratta e’ un particolare tipo di classe permette di fornire una implementazione.
Bacheca: Supporto alla creazione e diffusione di annunci basato su CORBA Corso di Reti di Calcolatori LS Prof. Antonio Corradi Progetto di Elisa Addimanda.
Alex Marchetti Infrastruttura di supporto per l’accesso a un disco remoto Presentazione del progetto di: Reti di calcolatori L-S.
SnippetSearch Database di snippet bilanciato e replicato di Gianluigi Salvi Reti di calcolatori LS – Prof. A.Corradi.
LIP: 4 Maggio 2007 Interfacce. Cos’e’ una Interfaccia una interfaccia e’ un particolare tipo di classe contiene solo la specifica non ha implementazione.
LIP: 15 Marzo 2005 Vettori di interi. Esercizio proposto Definire una classe VectorInt i cui oggetti sono vettori omogenei di interi ordinati in modo.
LIP: 18 Aprile 2008 Interfacce. Rappresentazione Lista val next vuota Lista vuota: any true Lista non vuota: any true 154 false 24 false.
Hattrick Stadium Corso di Reti di Calcolatori LS Anno Accademico 2005/2006 Dolif Emilano matr
JDICS Java Dynamic Infrastructure for C/S systems Laura Galli matr Reti di calcolatori LS, Prof. A.Corradi A.A
1 Metodo I metodi sono uno strumento che i programmatori usano per strutturare i programmi, sia per renderli più facili da capire che per permettere il.
Transcript della presentazione:

Esame di Reti di Calcolatori LS Andruccioli Daniele

Gli elementi del sistema ORB ha la funzione di servizio di nomi. Gestore ha la funzione di server: gestisce i nomi dei client registrati (siano giocatori o tavoli) e mantiene aggiornate dinamicamente le liste dei client attivi. Tavolo come client deve registrarsi e fare il login e il logout nel Gestore, come server fornire deve fornire i metodi che servono ai giocatori per unirsi al tavolo. Giocatore deve registrarsi e fare il login e il logout nel Gestore e può unirsi a uno o più tavoli.

Gestore Tavolo Interazioni logiche con il Gestore Tavolo

Interazioni logiche con i tavoli Tavolo

File IDL module OG { interface Giocatore { boolean notificaServer(in string messaggio); boolean notificaPartita(in boolean stato); }; interface Tavolo { boolean unisciti(in string nome); boolean notificaTavolo(in string messaggio); boolean notificaServer(in string messaggio); }; interface Gestore { boolean registrazioneTavolo(in string nome); boolean registrazioneGiocatore(in string nome); string loginTavolo(in string nome); boolean logoutTavolo(in string nome); string loginGiocatore(in string nome); boolean logoutGiocatore(in string nome); boolean notificaTavoloDown(in string nome); boolean notificaGiocatoreDown(in string nome); };

Metodi remoti del Gestore (1) boolean registrazioneTavolo(String nome) Serve per registrare un tavolo. Se è già presente un tavolo con quel nome fra quelli già registrati restituisce false, altrimenti aggiunge il nome fra i registrati e restituisce true. boolean registrazioneGiocatore(String nome) Serve per registrare un giocatore. Se è già presente un giocatore con quel nome fra quelli già registrati restituisce false, altrimenti aggiunge il nome fra i registrati e restituisce true. string loginTavolo(String nome) Serve per il login di un tavolo. Se è già presente un tavolo con quel nome fra quelli nella lista o se il tavolo non è registrato restituisce false, altrimenti aggiunge il nome alle lista, notifica lazione agli interessati e restituisce true. boolean loginGiocatore(String nome) Serve per il login di un giocatore Se non è presente un giocatore con quel nome fra quelli in lista o se il giocatore non è registrato restituisce false, altrimenti rimuove il tavolo dalla lista, notifica lazione agli interessati e restituisce true.

Metodi remoti del Gestore (2) string logoutTavolo(String nome) Serve per il logout di un giocatore Se non è presente un giocatore con quel nome fra quelli in lista restituisce false, altrimenti rimuove il tavolo dalla lista, notifica lazione agli interessati e restituisce true. boolean logoutGiocatore(String nome) Serve per il logout di un giocatore Se non è presente un giocatore con quel nome fra quelli in lista restituisce false, altrimenti rimuove il tavolo dalla lista, notifica lazione agli interessati e restituisce true. boolean notificaTavoloDown(String nome) Serve per segnalare se un tavolo è caduto Se il tavolo non fa parte della lista restituisce false, altrimenti fa il logout del tavolo e restituisce true. boolean notificaGiocatoreDown(String nome) Serve per segnalare se un tavolo è caduto Se il giocatore non fa parte della lista restituisce false, altrimenti fa il logout del tavolo e restituisce true.

Metodi del Tavolo boolean unisciti(String nome) Serve al giocatore per unirsi al tavolo Se il tavolo non è disponibile restituisce false, mentre se è disponibile, aggiunge il giocatore alla lista e restituisce true. boolean notificaTavolo(String messaggio) Serve agli altri tavoli per notificare lo stato della propria partita boolean notificaServer(String messaggio) Serve al Gestore per notificare il login e il logout di un tavolo o di un giocatore

Metodi del Giocatore boolean notificaServer(in string nessaggio) Serve al Gestore per notificare il login e il logout di un tavolo boolean notificaPartita(in string nome) Serve al tavolo per notificare linizio o la fine della partita Se il valore di ingresso è true, significa che è iniziata la partita, se è false significa che la partita è finita

Implementazione del Messaggio nome add nome rem... nome add nome rem...

Valutatore del Messaggio Public String valuta(ListaBeanElementi listaTavoli, ListaBeanElementi listaGiocatori, String input) Se si devono aggiornare sia la lista di tavoli che quella di giocatori public String valutaTavoli(ListaBeanElementi listaTavoli, String input) Se si deve aggiornare solo la lista di tavoli public String valutaGiocatori(ListaBeanElementi listaGiocatori, String input) Se si deve aggiornare solo la lista di giocatori Le liste sarebbero potute essere implementate in qualsiasi modo, ma si è scelto di farlo utilizzando i java bean in modo che sia garantita la coerenza delle liste di giocatori allinterno della classe tavolo.

Interfaccia utente

Reazione a cadute nalla rete Tavolo

Reazione a cadute nalla rete Tavolo Gestore

Reazione a cadute nalla rete Tavolo Gestore

Reazione a cadute nalla rete Tavolo Gestore Tavolo

Conclusioni Questa è unarchitettura generale che può andare bene per varie applicazioni multigiocatatori in rete. A seconda del gioco ogni tavolo può prevedere dei metodi per il gioco, oppure generare dei processi che si occupino della gestione della partita. Evoluzioni del sistema possono prevedere di attribuire un punteggio ai giocatori che viene modificato alla fine di ogni partita.