Salta el contingut
 

Exercici: Chat

Autor: Joan Puigcerver Ibáñez

Correu electrònic: j.puigcerveribanez@edu.gva.es

Llicència: CC BY-NC-SA 4.0

(Reconeixement - NoComercial - CompartirIgual) 🅭

Objectius

  • Conèixer els mecanismes i implementar programes que utilitzen el protocol TCP/IP per comunicar-se.
  • Desenvolupar aplicacions servidor amb capacitat de gestionar múltiples clients.

Estructura del projecte

Tots els exercicis han d'estar situats en el package corresponent.

  • Package: ud3.exericises
  • El format de la eixida del programa ha de ser consistent amb el format demanat.

Exercici: Chat

Realitza un chat programat amb Java amb una estructura client/servidor.

Client

El programa client es composarà de dos fils d'execució:

  • El fil principal, que es connectarà al servidor, s'identificarà mitjançant un nom i permetrà enviar missatges al servidor.
  • Un fil secundari que escoltarà al servidor i mostrarà per pantalla tots els missatges rebuts.

Servidor

El servidor ha de poder gestionar molts clients a la vegada, per tant, ha de crear un fil independent per cada client que es connecte.

Quan es connecta un client, el servidor esperarà al que el client s'identifique i després escoltarà els missatges que els clients escriguen.

Cada vegada que es reba un missatge d'un client, el servidor enviarà el següent missatge a tots els clients connectats:

Nom: Missatge
On Nom és el nom amb el qual el client que ha enviat el missatge s'ha identificat i Missatge és el missatge enviat.

sequenceDiagram
    actor Usuari
    Usuari->>Client: Introdueix un missatge
    Client->>Servidor: Envia el missatge
    actor Altres Usuaris
    Servidor->>Altres Usuaris: Envia el missatge<br/>amb el nom de l'usuari