Sistemas

Páginas: 7 (1609 palabras) Publicado: 23 de abril de 2014
Laboratorio de Fundamentos de Sistemas Distribuidos

Chat en Java - 1
Tipo de entrega:
por grupos de prácticas
Fecha límite:
sesiones de laboratorio
Lugar:
Atenea (nou campus)
Objetivos del proyecto:
• Crear y utilizar objetos
• Crear y utilizar variables y métodos de clases
• Utilizar try, catch y finally para detectar y manejar excepciones
• Implementar clientes y servidores enJava que se comuniquen entre sí utilizando
sockets
• Implementar un servidor con subprocesamiento múltiple
Resultados a entregar:
• Los resultados esperados de esta práctica es la carpeta del Workspace del Eclipse
que contiene los códigos de las aplicaciones. Coloca los códigos de cada sesión en un
package llamado Chat_X

Descripción de la aplicación
En este proyecto vamos a desarrollar unaaplicación distribuida con arquitectura
cliente/servidor. La aplicación distribuida es un Chat que permite a los clientes darse de alta y
de baja en el Chat, enviar mensajes a todos los clientes en línea y pedir la lista de clientes en
línea.
El código del cliente se programará en la clase ClienteChat (ClienteChat.java) y el
código del servidor en las clases ServidorChat (ServidorChat.java) yCliente
(Cliente.java)

Estudio Previo
1. Estudio de los apartados (“Sockets, Clients, and Servers”, y “Programming
Examples”) de la sección 10.4 (“Networking”) del libro “Introduction to Programming
Using Java Version 4.0, July 2002” de David J. Eck (en el apartado comentarios
tienes cómo acceder on-line al contenido del libro)
2. Compila, ejecuta y analiza detenidamente el ejemploDateServer.java y
DateClient.java. Esta aplicación utiliza un objeto de la clase PrintWriter para escribir
datos en un socket y un objeto de la clase Reader para leer datos de un socket.
Nota:
Para compilar DateServer.java y DateClient.java necesitas la clase TextIO.class que
es una clase que no pertenece al SDK.
Coloca el código fuente de TextIO.java en el mismo package que el códigoDateServer.java y DateClient.java para que puedas usar la clase TextIO.
La clase TextIO sólo se usa como clase de soporte (no es necesario que la entiendas
para realizar la práctica)
3. Prueba a NO arrancar el servidor de la aplicación DateServer.java y DateClient.java y
arranca el cliente. Analiza la secuencia de sentencias que se ejecutan cuando
ejecutas el cliente (tráelo a la sesión de laboratorioen papel)
4. Compila, ejecuta y analiza detenidamente el ejemplo CLChatClient.java y
CLChatServer.java. Esta aplicación utiliza un objeto de la clase PrintWriter para

1

escribir datos en un socket y un objeto de la clase TextReader para leer datos de un
socket.
Nota:
Para compilar estos ejemplos sucede lo mismo que en los ejemplos del apartado
anterior (aquí necesitas la claseTextReader.class)
Coloca el código fuente de TextReader.java en el mismo package que el código de
CLChatClient.java y CLChatServer.java para que puedas compilar los ejemplos.
En el apartado comentarios tienes donde hay una explicación de esta clase y de sus
métodos.
5. Prueba a arrancar el servidor de la aplicación CLChatClient.java y CLChatServer.java
y NO arranques el cliente de la aplicación.Analiza la secuencia de sentencias que se
ejecutan en el servidor (tráelo a la sesión de laboratorio en papel)
6. Analiza el protocolo que utiliza el servidor de nuestro chat formado por las clases
ServidorChat.java y Cliente.java. Si programamos el cliente en una clase
ClienteChat.java, ¿Qué deberá enviar ClienteChat por el socket para registrarse?
(tráelo a la sesión de laboratorio en papel)Comentarios
Introduction to Programming Using Java Version 4.0, July 2002
El libro “Introduction to Programming Using Java Version 4.0, July 2002” de David J. Eck
(eck@hws.edu) está accessible on-line desde http://www.faqs.org/docs/javap/index.html
El
código
fuente
de
las
aplicaciones
http://www.faqs.org/docs/javap/source/index.html

lo

puedes

bajar

de

También puedes...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Sistemas
  • Sistemas
  • Sistema
  • Sistemas
  • Sistemas
  • Sistemas
  • Sistemas
  • El sistema

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS