Intermedio
Unas 22 horasProyecto 2 de 4Chat multiusuario con salas sobre TCP
Desarrolla un servidor de chat y un cliente de consola con apodos únicos, salas, mensajes privados y lista de usuarios conectados. Define el protocolo de texto, atiende a muchos clientes a la vez y gestiona las desconexiones bruscas.
Java 21Sockets TCPHilosConcurrentHashMap
Tu avance0/11 · 0 %
Objetivos de aprendizaje
- •Diseñar un protocolo de aplicación
- •Programar servidores concurrentes con pools de hilos
- •Compartir estado entre hilos de forma segura
Requisitos mínimos
Fases sugeridas
- 1
Protocolo
- 2
Servidor
- 3
Cliente
- 4
Pruebas
Qué entregar
- Código del servidor y del cliente
- Documento del protocolo
- Informe de la prueba de carga
Para ir más allá
- Historial de cada sala en fichero
- Cifrado TLS con SSLSocket
Rúbrica de evaluación
| Criterio | Peso | Para la máxima nota |
|---|---|---|
| Protocolo | 20 % | Completo, sin ambigüedades y con errores definidos |
| Concurrencia | 35 % | Estado compartido seguro y sin bloqueos |
| Funcionalidad | 25 % | Todas las órdenes funcionan |
| Robustez | 20 % | Desconexiones y entradas erróneas bien tratadas |
Úsala para autoevaluarte antes de entregar. Tu profesorado puede usar otros criterios.
Consejos y errores típicos
- Envía desde un solo sitio a cada cliente: dos hilos escribiendo a la vez mezclan los mensajes.