¿Qué tan relevante es PHP hoy para los juegos de navegador?

12

Fui el desarrollador principal de 2 juegos de navegador moderadamente exitosos hace unos años, y planeo trabajar en un nuevo juego pronto. En ese momento, los escribí en PHP puro (sin motor de plantillas ni nada por el estilo).

Me gustaría comenzar a trabajar en un nuevo juego, pero he estado fuera del mundo del desarrollo web por un tiempo. Al leer, escucho muchas cosas buenas sobre Rails, Django, Node.js, etc., con las que no tengo experiencia (aunque conozco bastante bien Python, Javascript y los demás).

Entonces mi pregunta es la siguiente: si tuviera que seguir mis viejos métodos y volver a usar PHP, ¿me estaría dificultando las cosas? ¿Elegir algo más "de moda" tendría un impacto real en mi desarrollo?

Además, ¿alguien tiene algún indicador relacionado con el desarrollo específico de juegos de navegador con estas herramientas más modernas?

Bitgarden
fuente
Node.js tiene la ventaja de ser JSON, pero podrás desarrollarlo más rápido si te quedas con lo que sabes (y PHP tiene json_encode y json_decode si quieres trabajar con JSON en el cliente)
thedaian
Quédese con PHP5, está desarrollado activamente y no tiene ninguna característica que haga imposible crear un buen juego de navegador. Las tecnologías web tienen ciertos cuellos de botella, como el servidor web, el servidor de bases de datos. Preocupaciones que no debe vincular directamente a su elección de idioma. El lenguaje es solo el entorno, si te sientes cómodo con PHP usa PHP.
daemonfire300

Respuestas:

13

PHP sigue siendo relevante para los juegos de navegador. Hay toneladas de compañías ( Gameforge , Funzio , Goodgame Studios , etc.) que usan PHP para sus juegos en línea.

Creo que PHP y Java son los más utilizados, pero aprender algo como Node.js y Python también puede ser beneficioso. Realmente depende de en qué te quieres enfocar. ¿Aprender nuevas tecnologías / un nuevo lenguaje de programación o crear un juego con las herramientas que ya conoces?

Como otros sugirieron, podría mejorar su cliente de juego utilizando tecnologías como HTML5 y JavaScript. Para el backend todavía puedes usar PHP. Eso podría darle suficientes cosas nuevas para aprender mientras que aún puede beneficiarse de sus habilidades de programación PHP.

bummzack
fuente
+1, la programación del servidor no suele ser difícil, estás limitado por el idioma del cliente.
Markus von Broady
5

PHP sigue siendo relevante y ampliamente utilizado.

Según la comunidad de programación de TIOBE, PHP es el quinto lenguaje más popular. Estaba en cuarta posición el año pasado. Esa disminución podría deberse simplemente a un aumento en la cantidad de tecnologías disponibles.

Supongo que hay alguna correlación entre la popularidad del lenguaje de programación general y la popularidad del lenguaje de programación del juego.

Rails, Django y Node.js son marcos o bibliotecas, por lo que compararlos con PHP no funcionará tan bien, en su lugar, podría compararlos con marcos PHP como Symfony y CakePHP . Si ya confía en PHP y no tiene experiencia con Ruby / Python, puede valer la pena usar uno de estos.

La mayoría de estos marcos ofrecen una arquitectura de modelo-vista-controlador que podría acelerar el desarrollo y mantener su código más limpio y fácil de mantener.

CiscoIPPhone
fuente
+1 para hacer la distinción entre lenguaje / intérprete y marco. Mi amigo está trabajando en una startup ahora cuyo backend web está escrito en perl con el marco Catalyst. Odia a Perl, pero le gusta mucho la forma en que se usa en Catalyst.
michael.bartnett
1
-1 para llamar a Node.js como marco o biblioteca. Es un entorno de script independiente y, en cierto modo, en realidad es de nivel bastante bajo, lo que en mi opinión lo convierte en un mejor candidato para un backend de juego que PHP. Para el desarrollo web normal, querrás poner un marco encima solo para llevarlo al nivel de abstracción de PHP.
aaaaaaaaaaaa
3

Los viejos juegos de navegador del día no tienen nada en común con lo que puedes lograr hoy con lo que está disponible.

La gran pregunta es sobre el tiempo real; Si desea mantener el mismo tipo de diseño de juego que un juego de navegador antiguo, PHP debería estar bien. La cosa es que el tipo de juego fue definido por las restricciones en el momento; Supongo que si ya has incursionado en estos juegos, probablemente quieras llevar las cosas un paso más allá.

Si desea mantener un juego más antiguo basado en el tiempo estático, podría seguir con PHP y tal vez sacar provecho del lienzo de moda en HTML5 . Un paso más podría ser mezclarlo con un poco de AJAX para hacer las cosas un poco más 'en tiempo real' ; probablemente usaste esto en tus juegos más antiguos de todos modos.

No conozco los detalles de las otras herramientas que utiliza, pero estoy familiarizado con los juegos PHP / AJAX, y con su conocimiento básico, y el nuevo poder de HTML5, creo que cualquier juego de navegador debería funcionar bastante bien para usted .

Por supuesto; Esto supone que quieres hacer un juego bastante estático.

Jonathan Connell
fuente
0

Para una herramienta más moderna, puede elegir un motor de juego con WebGL. La mayoría de ellos son impulsados ​​por JavaScript. Puede consultar esta lista , ver si alguno se ajusta a sus necesidades.

Quazi Irfan
fuente
3
Creo que la pregunta está dirigida a los juegos basados ​​en la página web en lugar de los juegos tradicionales que se ejecutan en un navegador
Ioachim