Java
example
|
|
Realizzare
una chat-line
INTRODUZIONE:
La realizzazione di questa piccola applicazione e le poche pagine di descrizione
che seguono non pretendono di insegnare niente a nessuno. Anzi mi auguro
che chiunque decida di leggere il resto e di testare la chat che accludo,
voglia inviarmi le sue opinioni.
Leggendo il codice
vi accorgerete che non ci sono soluzioni raffinate, che tutte le classi
che ho costruito sfruttano gli oggetti più semplici che questo
linguaggio mette a disposizione. Inoltre sono un convinto sostenitore
della libera diffusione della cultura informatica e spero che i miei sforzi
possano aiutare chi, come me, ha desiderio di conoscere e approfondire.
Spero inoltre di poter ringraziare così chi ha dedicato molto del
proprio tempo per aiutarmi ad imparare. |
SCENARIO:
Lo scopo è mettere a disposizione di un gruppo di persone (gli
alunni di una classe con una LAN, oppure una piccola comunità di
amici che desidera dialogare per proprio conto senza dover sfruttare i
mezzi messi a disposizione dal web) un'applicazione che consenta di comunicare
in maniera semplice e senza conoscere come si amministra un web-server.
Ho utilizzato un'architettura client/server per ottenere il risultato.
Lasciando agli ipotetici utenti l'interazione con quella parte del sistema
che da ora in poi chiameremo lato client, ci occuperemo di costruire anche
un lato server che ha il compito di controllare, autorizzare e smistare
le richieste dei client. |
CASI D'USO:
L'applicazione offre agli utenti le funzionalità normalmente
presenti in ogni chat:
- L'utente
è invitato ad inserire un nick-name per poter partecipare alla
chat ed essere riconosciuto in maniera univoca dagli altri utenti.
- All'utente,
correttamente registrato, viene messa a disposizione un interfaccia
grafica che consetirà di poter inserire il proprio messaggio,
vedere i messaggi altrui e verificare costantemente chi è presente
in chat.
- Con
un doppio click sul nick-name di un altro partecipante, l'utente potrà
aprire una comunicazione privata con questi senza che nessun'altro
ne venga a conoscenza.
- L'utente
che esce dalla chat viene automaticamente eliminato dalla lista dei
partecipanti.
- ALTERNATIVA:
L'utente inserisce un nick-name e lo invia al lato server per poter
essere registrato, il server verifica che il nick è già
presente.
Al passo n°2, l' interfaccia grafica avvertirà l'utente
dell'errore, gli consntirà di vedere i nick già in uso
e lo inviterà a compiere nuovamente la procedura al passo n°1.
- ALTERNATIVA:
L'utente avvia erroneamente più di una volta l'applicazione
lato client.
Al passo n°1, dopo aver ricevuto il nick, il server effettua un
controllo anche su indirizzo IP e sulla porta su cui si trova in ascolta
il lato client che ha effettuato la richiesta di connessione, e se
già presenti chiude automaticamente il nuovo client.
- ALTERNATIVA:
L'utente clicca erroneamente sul proprio nick per avviare la comunicazione
privata.
Al passo n°3 l'interfaccia grafica controlla il nick che si è
tentato di selezionare e se risulta essere il proprio non invia la
richiesta al lato server.
 |
download:
(lato_client.zip) (lato_server.zip) |