Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas...

28
Laboratorio de programación III

Transcript of Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas...

Page 1: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Laboratorio de programación III

Page 2: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Introducción

Implementación

Sockets y Threads Servlets Diagramas de clases Base de datos

Diseño de interfaz

1/27

Page 3: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Propósito.

Cómo se juega.

Comenzar la aplicación. Partidas. Opciones del cliente. Quien gana.

2/27

Page 4: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Cliente / Servidor:

3/27

Page 5: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

ClienteHilo

Lector Cliente

Cliente:

4/27

Page 6: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

cliente

cliente

Servidor

socket

socket

jugador

jugador

Hilo respuesta

Hilo peticiones

Hilo peticionesHilo

peticiones

new

new

Servidor:

5/27

Page 7: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Mensajes:

◦jugadoresPartida @Cristina@Marcos

◦saldoMesa@Partida 1@500

6/27

Page 8: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Parser:

empezarPartida@Partida 1@4@Marcos

String []:

empezarPartida Partida 1 4

7/27

Nombre de la partida Nombre del primer jugador

Número de jugadores

Marcos

Page 9: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

8/27

Page 10: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

9/27

Estructura interna

Page 11: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

10/27

Diagrama Entidad/Relación

Page 12: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Tabla Jugador: guarda un jugador por partida en la que está presente.

11/27

Page 13: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Tabla Partida: guarda una partida en la base de datos y su identificador es la fecha por si hay una coincidencia en los nombres.

12/27

Page 14: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Arquitectura cliente servidor:

Cliente: interfaz gráfico.

Servidor: gestión del juego.

Servlet: gestión de la página web.

13/27

Page 15: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

14/27

ControladorPrincipal

ControladorInterno

VentanaInterna

VentanaPartidas

VentanaPrincipal

<<Interface>>

Estrategia

Cliente

ControladorPartidas

MesaCliente

HiloLector

Cliente

Reproductor

CartaCliente

CartaBoca

AbajoCartaBoca

ArribaCarta

Elegida

ContenedorLoggerProperties

Poker

5

2

*

*

Cliente:

Page 16: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Controlador Principal

Cliente

Hilo Lector Cliente

cliente

cp

clientehlc

Cliente:

15/27

Page 17: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Carta Cliente

Mesa Cliente

Ventana Interna

cartaJugador1

cartaJugador2

mesa

Carta1Carta2Carta3Carta4Carta5

Cliente:

16/27

Page 18: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Cliente:

Estrategia

Carta Boca Arriba

Carta Boca Abajo

Carta Elegida

Carta No

Visible

17/27

Page 19: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

18/27

Servidor:

Servidor

Baraja

JugadorPartida

Juego

HiloPeticiones

Estadística Mesa

HiloRespuest

a

DataBaseConnection

Carta

Contenedor

Logger

PropertiesPoker

5

2

*

*

Mano

Ronda

*

2*

*

Page 20: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Servidor:

Servidor

Data Base Connection

Hilo Peticiones

Hilo Respuesta

Jugador

Juego

conexión

jugadores

juego

servidor

hp

hp

servidor hr

hp

19/27

Page 21: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

20/27

Servlet:

Page 22: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

21/27

servletServido

r

socket

Page 23: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Al iniciar la aplicación mostramos la ip.

22/27

Page 24: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Introducimos la ip: pokerCliente.properties

23/27

Page 25: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

24/27

Page 26: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Partidas disponibles:

25/27

Page 27: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Decisiones de diseño importantes: Reproductor

JAR: jlgui3.0

26/27

Page 28: Laboratorio de programación III. Introducción Implementación Sockets y Threads Servlets Diagramas de clases Base de datos Diseño de interfaz 1/27.

Realizado por:

Cristina Mosquera Marcos Zamarreño

27/27