Come per la maggior parte delle applicazioni su Internet, abbiamo
scelto il classico modello client/server (vedi figura), quindi nessuna novità dal punto
di vista dellarchitettura.
La più grande innovazione rispetto alle applicazioni della stessa
classe, presenti oggigiorno sul WEB, risiede nella scelta di Java come linguaggio di
sviluppo. Tale scelta è stata dettata da diverse considerazioni.
Java nasce proprio per offrire una serie di vantaggi fondamentali per lo sviluppo di
software che necessita di comunicazione tra diversi sistemi collegati alla rete INTERNET.
Inoltre il server deve interagire con lambiente VRML trasferendo
ad esso informazioni derivanti dallinterattività degli utenti con lambiente
VRML stesso, ognuno sul proprio client. Lutente non ha a disposizione una semplice
chat ma bensì un ambiente tridimensionale con il quale può interagire con in più una
chat tradizionale con la quale dialogare con gli altri utenti collegati.
I due oggetti sono strettamente legati tra di loro e il server deve
occuparsi anche di questa loro relazione.
Lunico linguaggio standard che è in grado di gestire sia la
complessità della comunicazione che linterazione con lambiente VRML è
tuttora il Java. La scelta verso tale linguaggio è stata, inoltre avvalorata dal fatto
che grazie alle caratteristiche di assoluta portabilità di Java, il codice
dellapplet può essere eseguito su qualsiasi piattaforma e permette, quindi, di
mettere in contatto computer con i più disparati sistemi operativi.
Inoltre il linguaggio prescelto prevede una buona
integrazione con il networking e supporta entrambe le famiglie di protocolli standard UDP
e TCP.
Per quanto riguarda il protocollo la nostra scelta è caduta su TCP
poiché garantisce un I/O più affidabile e la comunicazione è basata su stream
facilmente gestibili. La scelta del linguaggio Java inoltre ci ha permesso di aver un
codice molto snello e quindi un client di piccole dimensioni garantendo tempi di download
molto contenuti.
[ Home ] [ Up ] [ Scheda Tecnico-Funzionale ] [ Gestione degli Avatar ] [ Manipolazione dei dati ] [ Sviluppi futuri ] [ Gestione delle comunicazioni ] [ Il SERVER ] [ Il CLIENT ] [ Differenze con altri Ambienti 3D ]