Progetto di un'architettura client-server applicata al gioco del Nim

 

I seguenti schemi illustrano il risultato dell'analisi funzionale, dell'individuazione delle componenti e della definizione preliminare delle interazioni fra componenti.
L'organizzazione si basa sul modello Model-View-Controller (MVC) già sviluppato per la versione residente su un'unica macchina; tale struttura viene decomposta individuando i moduli lato server e quelli lato client.
La comunicazione client-server viene gestita da moduli aggiuntivi specializzati, che realizzano il paradigma "proxy".

Schema sintetico MVC applicato al caso in esame (figura in alto), separazione client-server delle componenti e oggetti "proxy":

 

 

Analisi del modulo RemoteNimUser in relazione a NimView (di cui funge da proxy). Si riconoscono le componenti essenziali del design pattern "proxy": tipo condiviso (interfaccia NimUser), oggetto reale (NimView) e proxy (RemoteNimUser); il proxy è legato all'oggetto reale per aggregazione attraverso il canale di comunicazione.

 

 

Analisi delle informazioni trasmesse attraverso il canale: