• Compra una licencia de Windows 10/11 (10€) u Office (18€) al mejor precio u Office al mejor precio. Entra en este post con las ofertas
  • ¡Bienvenid@! Recuerda que para comentar en el foro de El Chapuzas Informático necesitas registrar tu cuenta, tardarás menos de 2 minutos y te dará valiosa información además de ayudarte en lo que necesites o pasar un rato agradable con nosotros.

Desarrollo Bingo WEB

WRGuide

Nuevo
Registrado
6 Jun 2016
Mensajes
18
Puntos
3
Hola buenas tardes. Estoy desarrollando una aplicación web en C# y ASP.Net con visual studio. Quería implantar un sistema que estuviese siempre encendido y fuese soltando números, imaginemos una especie como de bingo. La cosa es que el apartado de diseño y funciones básicas como comprar cartones se hacerlo, pero el sistema automático no que genere las partidas y los números no. Tampoco sabría como hacer que cada persona que se conecte pueda ver la partida actual.

¿Podrían decirme que he de mirarme para ser capaces de hacerlo? Me recomiendan cambiar de lenguaje y dejar de lado asp.net?

Por otro lado, seria capaz de hacerlo en c#, pero he intentado linkear un proyecto de c# con uno de asp.net y parece que no lo pilla o desde luego no puedo acceder a los datos del mismo. ¿Que me recomendarían hacer?

Espero su respuesta, Muchas gracias
 
Y no sería mejor hacer eso en java? Normalmente ese tipo de aplicaciones, creo, se hacen en java, no?
 
Y no sería mejor hacer eso en java? Normalmente ese tipo de aplicaciones, creo, se hacen en java, no?

Pues no lo se, pero teniendo en cuenta que chrome no es compatible con la API de java dudo mucho que las aplicaciones normalmente se desarrollen en java. He usado .Net por que es el que estoy usando en clase, pero me adaptaría a cualquier otro (excepto java por incompatibilidad)
 
Lo suyo sería tener un servicio que fuera insertando datos en un BBDD no?
 
Pues no lo se, pero teniendo en cuenta que chrome no es compatible con la API de java dudo mucho que las aplicaciones normalmente se desarrollen en java. He usado .Net por que es el que estoy usando en clase, pero me adaptaría a cualquier otro (excepto java por incompatibilidad)

¿Que API no es compatible con chrome?
Yo trabajo desarrollando java y mis paginas se ven en chrome, IE, firefox, opera, .........

En desarrollo de paginas java suele usarse para el servidor, la parte cliente es html, javascript, css, .................
 
Lo suyo sería tener un servicio que fuera insertando datos en un BBDD no?

Es una de las ideas que tenia, pero yo creo que con tanto insert y con tanta select es realmente lento. Ademas de que surgen problemas a la hora de querer mostrar dichos datos a todo el mundo.

Ahora mismo estoy probando con un objeto propio y parece que si que puedo acceder a el y con eso trabajar.
 
¿Que API no es compatible con chrome?
Yo trabajo desarrollando java y mis paginas se ven en chrome, IE, firefox, opera, .........

En desarrollo de paginas java suele usarse para el servidor, la parte cliente es html, javascript, css, .................

Pues cuando intentas acceder a una web que pide que ejecutes java, en chrome (a partir de la v 43) ya no se puede hacer. Y te lo digo por que me toca usar el explorer varias veces. Pero vamos, te remito el post de Google y la web de Java

https://support.google.com/chrome/answer/6213033?hl=es-419
https://www.java.com/es/download/faq/chrome.xml

Pero aun así, si me explicas un poco como lo haces me vendría bien para saber mas acerca del diseño y desarrollo web
 
Pero tu no tienes porque ejecutar nada de java en la vista.

Puedes hacer una web perfectamente sin ejecutar nada de java en el explorador.
El 99% de las web pasa eso.

Mírate tutoriales de java mvc (modelo-vista-controlador)

Tienes la opción de hacerlo con diferentes librerías como por ejemplo spring.
http://www.davidmarco.es/spring-mvc
 
Pero tu no tienes porque ejecutar nada de java en la vista.

Puedes hacer una web perfectamente sin ejecutar nada de java en el explorador.
El 99% de las web pasa eso.

Mírate tutoriales de java mvc (modelo-vista-controlador)

Tienes la opción de hacerlo con diferentes librerías como por ejemplo spring.
http://www.davidmarco.es/spring-mvc

Justo hago eso, pero con asp .net y c#. Me miraré lo que has dicho tu a ver que puedo sacar que con java ya he trabajado. Gracias
 
Y por que no programais con cosas "normales" como php? xd

Si quieres automatizar cosas, si es lo que entiendo, que el servidor vaya sacando numeros cada cierto tiempo la unica forma que se me ocurre es programar tareas desde la consola, y no se si habra algun servidor gratuito que te permita hacer eso.
Si lo quieres hacer en local pues bien, en windows mismo se puede, que cada x tiempo te ejecute un script.

Otra forma no se si sera posible, date cuenta que realmente va en contra de lo que una web significa, una respuesta a una peticion, etc.
Las labores de actualizacion del servidor y de los datos en este caso son independientes de la propia aplicacion, cuya finalidad es proporcionar esos datos al usuario.
 
también puedes tener 3 aplicaciones
1 la aplicación propiamente dicha que reparte los cartones y todas esas cosas, otra que saque números y la ultima que los comunique por servicios web.
Pongo en diferente el de sacar los números y comunicarlos porque uno es un batch periódico y el otro debe funcionar de forma asincrona.

eso si cuando tengas muchas personas conectadas el de los servicios web ocupara mucho ancho de banda.
 
Y por que no programais con cosas "normales" como php? xd

Si quieres automatizar cosas, si es lo que entiendo, que el servidor vaya sacando numeros cada cierto tiempo la unica forma que se me ocurre es programar tareas desde la consola, y no se si habra algun servidor gratuito que te permita hacer eso.
Si lo quieres hacer en local pues bien, en windows mismo se puede, que cada x tiempo te ejecute un script.

Otra forma no se si sera posible, date cuenta que realmente va en contra de lo que una web significa, una respuesta a una peticion, etc.
Las labores de actualizacion del servidor y de los datos en este caso son independientes de la propia aplicacion, cuya finalidad es proporcionar esos datos al usuario.

Por que para mi php no es normal... A mi me han enseñado C++, Java, C# y ASP.net... Para mi php es como chino, por eso utilizo lo que utilizo. Aun asi, estoy abierto a aprender mas lenguajes, que me recomendarias mirarme?
 
Php o pyton-
 
Ese proyecto lo puedes hacer con cualquier lenguaje, es mas un trabajo de servidor, que de cliente.

Enviado desde mi X5pro mediante Tapatalk
 
El único problema es que elija el lenguage que elija no vas a poder hacer lo que dices, si he entendido bien.
A priori no puedes programar tareas de ninguna forma, para ello necesitas tener acceso a la consola del servidor y alli programar las tareas, pero esa no es una cuestión de programación.

Lo de lo digo por comodidas y por todo.
No estoy muy al tanto, pero estoy seguro de que a la hora de alojar vas a tener muchisimos mas problemas en subir una aplicacion que funcione en java que una que funcione en php, que tira en practicamente todos los sitios.
 
Sampi no entiendo tu primer párrafo
No veo en que momento tiene el problema.
Para la función de sacar números tienes 2 opciones:
un batch que se ejecute cada x tiempo
una aplicación que este corriendo 24/7 solo sacando números.

En php tienes muchos hosting gratuitos, muy limitados pero gratuitos, en java no vas a encontrar ninguno o casi ninguno.
Y no creo que tengas problemas en subir nada de java a un servidor, en java tienes mucha variedad y tienes desde aplicaciones imposibles, hasta sencillísimas que con subir el ear o war ya funcionan.
 
Con subir me refiero a encontrar un hosting que te lo permita (gratuito), no al hecho de subir el proyecto como tal. Las opciones para java son mucho mas limitadas.

Sobre el primer párrafo lo que quiero decir es que programar una tarea periódica no es en si una funcion nativa del lenguage.
Ya que hablamos de php por ejemplo, "no" puedes usar una función de php que se ejecute cada x tiempo tipo intervalo de otros lenguajes.
Pongo el "no" entre comillas, porque bueno... todo al fina está por ver.

Como bien dices puedes ejecutar un batch, o mismamente un script de php también o de lo que sea, u hacer una aplicación que te lo haga etc, pero no puedes decirle a php, oye hazme esto cada hora. Tienes que buscar otra forma de hacerlo.

Igual me estoy colando, y de ser asi me encantaría saber la solución porque hace poco he tenido ese mismo problema en un desarrollo. Pero estoy casi seguro de que, al menos en php, no se puede.
 
en java si que tienes opciones a que se ejecute una serie de procesos cada x tiempo.
 
Vaya lío le estáis haciendo al compañero.

La elección del lenguaje es lo de menos, y PHP no es la mejor recomendación si tenemos en cuenta que él domina ya buenos lenguajes. Pero, como digo, el lenguaje no es relevante en este caso. Si dominas ASP.Net, hazlo en ese lenguaje. C# está bien, y en Java podrías hacerlo también.

Lo que tienes que hacer es programar tareas en el servidor. En Linux se hace con cron, pero como usas ASP.Net, imagino que estás en Windows y tendrías que utilizar tareas programadas.

Otra alternativa a eso sería arrancar un servicio (o demonio en Linux), o incluso ejecutar una aplicación simple desde el inicio, colocando un acceso directo a dicha aplicación en el directorio "Inicio" del Menú Inicio, sin llegar a montar un servicio. Esta aplicación/servicio lo que tiene que hacer es algo como esto:

Código:
while (true) {

    try {
        prepararPartida();
    } catch (...) {
        // no queremos que pete si hay fallos
    }

    sleep(3600); // Cada hora

}

En Linux podrías ejecutar eso con un script de inicio (/etc/init.d), convertirlo en daemon (con otros scripts), o incluso como consola en segundo plano (con el programa screen).

El propósito de este programa en general es modificar periódicamente el estado de tu base de datos (o ficheros, memcached o lo que sea), de forma que cada X tiempo, el que tú indiques, los datos de tu sistema muestren lo más actualizado: las nuevas partidas, las nuevas operaciones, etc.

Cuando acceden los clientes, se les muestra el estado ACTUAL de dichos datos mediante el software que dices que sabes hacer (una web que muestre esos datos y que les permita interactuar). Esto presenta un problema: la sincronización de los clientes que están viendo la web con los datos nuevos que vayan surgiendo.

Para solucionarlo, puedes configurar un refresco periódico (JavaScript, súper básico y cutre), o desarrollar un sistema de notificaciones: polling (fácil), push (más eficiente) o tiempo real (con websockets). Mediante estos mecanismos deberías conseguir que cada cliente (usuario o visitante) tuviera en su pantalla los datos más actualizados, siempre, y a medida que se van generando.
 
Sobre Java, al decir que es incompatible te estás confundiendo. Tú te refieres a los applets, que están en desuso y no son recomendables, pero en tu caso lo que sí puedes hacer es utilizar Java como lenguaje de back-end, como puedes utilizar C#, Ruby o PHP, por ejemplo. Lo que importa no es el lenguaje con el que desarrollas, sino la interconexión que ofreces. Es decir, la interfaz pública de tu software.

Puedes desarrollar un programa que genere partidas en Java, una API pública que permita la lectura y/o modificación de dichas partidas en ASP.Net, otra API en PHP para la sincronización, y los clientes utilizarían JavaScript para acceder a esos datos y manipularlos mediante peticiones HTTP a dichas APIs y/o interfaces.

No es necesario pensar en tu sistema de forma monolítica y homogénea. Puedes dividirlo en diversos servicios o componentes y cada uno realizarlo con un lenguaje y/o herramienta. Esta forma de pensar es, de hecho, más recomendable, pero también queda a tu elección.
 
Arriba