Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Desarrollo de una LIGA con POO

Estas en el tema de Desarrollo de una LIGA con POO en el foro de Bases de Datos General en Foros del Web. Hola, engo a este foro porque me dijeron que en el de PHP estaba haciendo lio (chiste). Bueno, soy muy novato en esto de la ...
  #1 (permalink)  
Antiguo 15/12/2004, 11:52
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Desarrollo de una LIGA con POO

Hola, engo a este foro porque me dijeron que en el de PHP estaba haciendo lio (chiste).

Bueno, soy muy novato en esto de la POO. El tema es que no se muy bien como encarar para diseñar un sistema que administre una liga, parecida a las de futbol.

Bueno, eso, Cluster me aconsejo que defina primero la estrucutra de mi DB. Tablas, relacion, etc. El tema es que no tengo mucha de como encarar todo el trabajo. Soy conciente que tengo que hacer una buena base en todo esto.
Definir las clases en forma correcta es el principio del buen diseño, pero no tengo la concepcion mental de como hacerlo.

Voy a ver si hago algunas costas asi me an aconsejando.
Saludos y gracias ...
__________________
| Cabeza De Raton |
  #2 (permalink)  
Antiguo 15/12/2004, 12:18
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Tabla Miembros.

Esta es la arquitectura de la tabla de miembros (tbl_miembros).
__________________
| Cabeza De Raton |
  #3 (permalink)  
Antiguo 15/12/2004, 12:21
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Esta tabla anterior es una tabla de todos los miembros del sitio para el cual yo quiero hacer la liga. Si bien puede ser un dato irrelevante, esta liga es para un clan de jugadores de AoC.

Lo que yo pensaba hacer era hacer una tabla que sea tbl_liga, por ejemplo, donde aparezcan cada uno de los jugadores que participan en dicha liga y con datos relacionados, como por ejemplo, partidos gaados, empatadas, perdidos, jugadores activo/inactivo, etc. Ahora vengo ...
__________________
| Cabeza De Raton |
  #4 (permalink)  
Antiguo 16/12/2004, 05:16
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Calisto ..

No te metas ya de lleno con las "tablas" .. define bien que datos ha de gestionar tu sistema. Esos "equipos" .. "los partidos" .. los "futbolistas" .. las "ligas" .. y que relación guardan entre ellos ..

Por ejemplo cosas tipo ... "un equipo se compone de N futbolistas .. ellos juegan "partidos" y N partidos forma una Liga .." o como corresponda .. Ahí ya se pueden ir viendo algún tipo de "relaciones" y "deduciar" alguna que otra tabla "básica" .. luego vendrá definir las "propiedades" de cada "entidad" y por ahí se podrá ver los "campos" que necesita tus tablas .. etc .. etc .. etc. Por último ver que consultas SQL necesitas en función de esos datos .. los que necesites.

Un saludo,
  #5 (permalink)  
Antiguo 16/12/2004, 11:21
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Gracias Cluster. Voy a analizar el tema.
__________________
| Cabeza De Raton |
  #6 (permalink)  
Antiguo 16/12/2004, 12:00
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Esta liga esta conformada por N jugadores, los cuales pueden ser determinados antes de empezar. Otros datos importanes de la liga son fecha de inicio, fecha de finalizacion, quien es el usuario que la está administrando. Tambien deberia tener una descripcion de la liga y datos por ahi solo informativos, como alguna imagen adosada, y un enlace a un topic de un foro. Y obviamente, tendria que tener un id utilizado como indice.

Ahora, la liga esta conformada por muchos jugadores. Por cada jugador se debe contabilizar partidas ganadas, partidas perdidas, partidas canceladas y algunos datos informativos. Tabien, debe tener un id como indice que se utilizaria para relacionar los cada jugador.
__________________
| Cabeza De Raton |
  #7 (permalink)  
Antiguo 16/12/2004, 15:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Intenta resumir el tema e ir creando/definiendo tus "entidades"..

De lo último que has comentado se ven:

Jugador
Partida
liga

Usuarios? (o "administrador liga")

Con eso ya se pueden ir haciendo algunas preguntas tales como:
¿que es una partida? .. ¿que es una liga? ..

para que se empiecen a ver las "relaciones" del tipo:
1 partida -> N jugadores
1 Liga -> N partidos

o de otro tipo si corresponde .. el caso es que cuanto mejor definas las "entidades" y como se relacionan ... mejor se iran viendo que tipo de "relaciones" necesitas y de ahí ir conformando el "modelo de datos" de tu BD .. Y .. así poco a poco irá saliendo. Luego vendrán las consultas SQL para "obtener datos".

Un saludo,
  #8 (permalink)  
Antiguo 17/12/2004, 06:55
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
MIra, yo solo estoy siguiendo mas o menos lo que vos me vas indicando; asi que paso a definir algunas cosas, y tratar de ir vanzando un poco mas.

LIGA
Una liga es un sistema de competencias donde los jugadores que la conforman juegan todos contra todos. Si un jugador gana obtiene un cierto puntaje. Si pierde no suma puntos. En esta liga no existen los empates.
La liga finaliza normalmente cuando se concluyen todos los partidos programados; o por otros factores de fuerza mayor, como por ejemplo fecha limite, por desicion del administrador, etc.

Todos los partidos se van realizando por fechas programadas. Se jugará una fecha por semana o lo que es lo mismo, un jugador juega 1 partido o partida por semana.
__________________
| Cabeza De Raton |

Última edición por Calisco; 17/12/2004 a las 07:03
  #9 (permalink)  
Antiguo 17/12/2004, 08:02
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Los usuarios yo lo uso como sinonimo de jugador. El administrador, como bien alcaras, es quein administra la liga. Sin embargo, los jugadores "informan" los resulados que ellos miemos realizan.


Primer Paso - Construccion de la LIGA
Cuando un administrador comienza una liga, se genera un identificador para la misma.En este caso la LIGA esta abierta para la incripcion.

Segundo Paso - Inscripcion de los jugadores
A partir de este momento, los jugadores (que tiene un id) se anotan en dicha liga. Creo que ahi se genera la relacion LIGA-JUGADOR.

El administrador decide en ultima instancia si el jugador inscripto queda o no queda como jugador activo.

Cuando se completa el cupo de jugadores para la liga, o cuando el admiistrador lo deside, se cierra la etapa de inscripcion.

Tercer Paso - Comienza la liga
De alguna forma se genera el calendario de liga, donde aparece en forma cronologia todos las partidas a jugar.
Cada partida realizada esta conformada por dos jugadores. Una partida seria una entidad mas de nuestra DB. Cada partida debe tener como datos los ids de cada jugador que la disputaron.

A medida que se van realizando los partidas fecha a fecha se va publicando la tabla de posiciones y todo tipo de datos estadisticos que surgen a partir de procesar los datos.
__________________
| Cabeza De Raton |
  #10 (permalink)  
Antiguo 17/12/2004, 08:42
Avatar de Prefontaine  
Fecha de Ingreso: agosto-2004
Mensajes: 313
Antigüedad: 19 años, 8 meses
Puntos: 0
Todo esto sería mejor hacerlo pirmero por fases, me explico; haz una tabla donde hayan los nombres de los paritcipantes, luego otra donde se introduzcan los nombres de los inscritos (incluyendo los datos del participante). Para mostrar los datos encargate de hacer "selects" con el "where fecha_inscripcion" para que no te muestre los jugadores incsritos fuera de plazo, (asi no lo haces "manualmente").
Exale imaginación.

Pdata. Yo hice una y me va perfectamente soo tengo que introducir las puntuaciones de los jugadores, es más si hay mas de dos quipos con el mismo jugador tan solo hace falta puntuar uno solo para que se puntuen el resto que són iguals. TAN SOLO HAY QUE TENER CLARO LA ESTRUCTURA DE LA BD Y LOS CONOCIMIENTOS el resto es un pocod e ayuda en los foros ;).
  #11 (permalink)  
Antiguo 17/12/2004, 10:04
Avatar de Prefontaine  
Fecha de Ingreso: agosto-2004
Mensajes: 313
Antigüedad: 19 años, 8 meses
Puntos: 0
En que lenguaje lo vas ha hacer?
  #12 (permalink)  
Antiguo 17/12/2004, 10:16
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
PHP y MySQL
__________________
| Cabeza De Raton |
  #13 (permalink)  
Antiguo 17/12/2004, 10:22
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Yo ya tengo la lista de participantes. EL tema es que esta liga esta pansada para al Age of Conquerors. Para participar de dicha liga tenes que estar inscripto en el foro de nuestro site (http://foro.clan-arg.com.ar).
Ya tengo mas o menos las tablas necesarias para el desarrollo de este asunto. Ahora veo si hago algun grafiquito visual.
__________________
| Cabeza De Raton |
  #14 (permalink)  
Antiguo 17/12/2004, 10:57
Avatar de Prefontaine  
Fecha de Ingreso: agosto-2004
Mensajes: 313
Antigüedad: 19 años, 8 meses
Puntos: 0
Bonito juego... si supiese usar php te ayudaría jaja pero ni lo toco.,

Un saludo
  #15 (permalink)  
Antiguo 17/12/2004, 12:42
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Pos graicias, pero hasta el momento me recomendaron que deje mis altos vuelos de programador de PHP e intente realizar el modelo de DB y objetos sin siquiera tocar un solo editor.
__________________
| Cabeza De Raton |
  #16 (permalink)  
Antiguo 17/12/2004, 13:41
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Relaciones de tablas.

Bueno, hice un esquema de las tablas ...



Me tengo que ir, toy saliendo del trabajo ...
__________________
| Cabeza De Raton |

Última edición por Calisco; 20/12/2004 a las 09:53
  #17 (permalink)  
Antiguo 20/12/2004, 06:32
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Bueno, me sacaron la imagen.
Entiendo que pueda llegar a ser grande. Valdria un MP al menos que me explicaran el porque; ya que yo no lo he hecho con ningun tipo de mala intension ni con la de molestar a nadie.

Si de algo he pecado, es de ignorante.
__________________
| Cabeza De Raton |
  #18 (permalink)  
Antiguo 20/12/2004, 07:06
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
mm En este foro está desactivao el tag de "IMG" (imagen) .. fijate abajo al pié de página dice: "reglas de mensaje".

Voy a tratar de conversar el tema con los Administradores del foro para que se habilite esa opción, pues es bastante clarificador usar imagenes para describir cosas como un modelo de datos ...


Un saludo,
  #19 (permalink)  
Antiguo 20/12/2004, 07:15
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Bueno, ahora aparecio, jejejeje. Recien no estaba. Si queres podes borrar estos post que no aportan nada al problema en concreto.
__________________
| Cabeza De Raton |
  #20 (permalink)  
Antiguo 20/12/2004, 07:17
 
Fecha de Ingreso: junio-2004
Ubicación: Stgo, Chile
Mensajes: 51
Antigüedad: 19 años, 10 meses
Puntos: 0
yo le agregaria un campo fecha a la tabla liga_partidas

Saludos,
Victoria
  #21 (permalink)  
Antiguo 20/12/2004, 11:03
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 1 mes
Puntos: 4
Ya hice algunas modificaciones en la estructura de tablas de la Base de datos.
__________________
| Cabeza De Raton |
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:02.