Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Pedir consejo con desarrollo de aplicación multiusuario.
#1

Buenos días!.

He creado un juego muy sencillo en el que el usuario realiza una serie de operaciones matemáticas hasta superarlas.
Es un formulario y el juego se desarrolla en este. La aplicación funciona.

Pero se me ocurre añadirle características nuevas, que fuera multiusuario.

Por ejemplo. Al entrar en la aplicación, se debería presentar un formulario donde el usuario ingrese su nombre y su edad.
Lo de la edad lo hago para saber si una persona con una edad le cuesta más o menos realizar esas operaciones matemáticas.
( Es que no siempre es fácil y no lo digo de broma ).

Partiendo de esto.

Si son varios usuarios los que van a jugar, al entrar en el formulario que pide los datos. Ese usuario ya puede haber jugado una vez.
La aplicación debe reconocer a los usuarios que ya han jugado al menos una vez. Podía ser una consulta y auto completar el nombre
si ya jugó alguna vez.

De principio había pensado en la creación de una base de datos ( Creo que esto no tiene remedio ). ¿ Qué os parece settings ?.
Pero esos settings parecen más de uso en solo una máquina y si ese juego el día de mañana se juega en otro pc y otra pc, etc. ( Eso es una teoría )

Mi idea también es controlar el progreso y la mejora o empeoramiento de las puntuaciones obtenidas en las partidas de los usuarios.
Realizar gráficas desde la primera partida hasta la última.

Es un comienzo. Angel

Comenzaré creando un formulario para practicar con nombres y edades y luego lo aplicaré.
De principio una lista y un archivo de texto donde se guardaran los nombres.

Saludos

"El lobo siempre será malo si sólo escuchamos a Caperucita.". El lobo.
    ¡Gracias!
#2

ignoro completamente el tema  At

"Es mejor saber todo de muy poco que muy poco de todo" - anonimo
    ¡Gracias!
#3

Settings te vale... si no utilizas el archivo por defecto de la clase, sino que creas uno propio. También puedes usar xml (gambas tiene un módulo para ello), json (tincho hizo una clase para eso) o similares o, incluso crear un formato de texto propio para tu programa. Es muy sencillo. Personalmente me inclino por settings, pero aquí cada maestrillo tiene su librillo.

Una base de datos, si lo único que guardas es el nombre, la edad y los puntos alcanzados o algo así, puede ser excesiva y complicar la cantidad de módulos y dependencias de tu programa.

Saludos.

No podemos regresar
[-] Los siguientes 1 usuarios dice gracias a Shordi por este post:
  • Shell
    ¡Gracias!
#4

(04-11-2021, 15:01)Shordi escribió:  Settings te vale... si no utilizas el archivo por defecto de la clase, sino que creas uno propio

¿ Entonces una clase propia que  tenga las propiedades del usuario y las grabe a un archivo concreto ?. No es difícil.
De paso tendré que repasar el tema de settings en Gambas. Hace tiempo que no lo toco.

En cuanto a usar xml, lo usé en su día para leer, más que para escribir. No es mala opción.
 
(04-11-2021, 15:01)Shordi escribió:  Una base de datos, si lo único que guardas es el nombre, la edad y los puntos alcanzados o algo así, puede ser excesiva y complicar la cantidad de módulos y dependencias de tu programa.

La verdad es que me dio por lanzarme por una base datos con dos tablas. La de los nombres y la de los puntos, pero puede ser complicarlo más
y aun estoy verde en el manejo de squlite con dos tablas ( que estoy deseando de verlo. Siempre igual ).

En verdad no es en si la creación del juego. Es mejorar la practica con Gambas para aprender más sobre este.

 
(04-11-2021, 12:56)tercoide escribió:  ignoro completamente el tema

Es más sencillo de lo que parece, flaco. Tongue

Saludos

"El lobo siempre será malo si sólo escuchamos a Caperucita.". El lobo.
    ¡Gracias!
#5

(04-11-2021, 12:34)Shell escribió:  De principio había pensado en la creación de una base de datos ( Creo que esto no tiene remedio ). ¿ Qué os parece settings ?.
Pero esos settings parecen más de uso en solo una máquina y si ese juego el día de mañana se juega en otro pc y otra pc, etc. ( Eso es una teoría )

En tu pregunta existen varios conceptos que voy a responder por separado.
1 - Guardar usuario y puntuación.
Lo mejor es usar un archivo JSON ya que permite gestionar datos en forma de listas y variables de varios tipos como números, booleanos, texto etc.
Para gestionar el archivo JSON puedes usar unas clases nativas de gambas o la clase Config que hicimos en conjunto con TercoIDE para leer y escribir variables en archivos JSON, yo la vengo usando en todos mis programas y funciona muy bien ademas de que es muy flexible.

2 - Que la misma lista de puntuación este disponible en diferentes instalaciones del juego
Para esto gambas debería guardar los datos en una web, por ejemplo. En este caso el programa implicaría algún tipo de infraestructura, ya sea en un servidor VPS o en un servidor en tu casa que dejes siempre encendido, por ejemplo una raspberry pi o algo así que consuma poco.
1 Saludo.

1 Saludo.
[-] Los siguientes 1 usuarios dice gracias a tincho por este post:
  • Shell
    ¡Gracias!


Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)