Quelle est la pertinence de PHP aujourd'hui pour les jeux par navigateur?

12

J'étais le développeur principal de 2 jeux par navigateur moyennement réussis il y a quelques années, et j'ai l'intention de travailler sur un nouveau jeu bientôt. A l'époque, je les écrivais en pur PHP (pas de moteur de template ou quoi que ce soit du genre).

J'aimerais commencer à travailler sur un nouveau jeu, mais je suis hors du monde du développement Web depuis un certain temps. En lisant, j'entends beaucoup de bien sur Rails, Django, Node.js, etc., avec lesquels je n'ai aucune expérience (bien que je connaisse assez bien Python, Javascript et les autres).

Donc, ma question est la suivante - si je devais suivre mes anciennes méthodes et recommencer avec PHP, serais-je en train de me compliquer les choses? Choisir quelque chose de plus "tendance" aurait-il un impact réel sur mon développement?

De plus, quelqu'un a-t-il des conseils concernant le développement spécifique de jeux par navigateur avec ces outils plus modernes?

Bitgarden
la source
Node.js a l'avantage d'être JSON, tout en bas, mais vous allez pouvoir développer plus rapidement en respectant ce que vous savez (et PHP a json_encode et json_decode si vous voulez travailler avec JSON sur le client)
thedaian
Restez fidèle à PHP5, il est activement développé et ne possède aucune fonctionnalité qui rendrait impossible la création d'un bon jeu de navigation. Les technologies Web ont certains goulots d'étranglement, tels que le serveur Web, le serveur de bases de données. Les préoccupations que vous ne devez pas associer directement à votre choix de langue. Le langage n'est que l'environnement, si vous êtes à l'aise avec PHP, utilisez PHP.
daemonfire300

Réponses:

13

PHP est toujours pertinent pour les jeux par navigateur. Il y a des tonnes de sociétés ( Gameforge , Funzio , Goodgame Studios , etc.) qui utilisent PHP pour leurs jeux en ligne.

Je pense que PHP et Java sont les plus utilisés, mais apprendre quelque chose comme Node.js et Python peut également être bénéfique. Cela dépend vraiment de ce sur quoi vous voulez vous concentrer. Apprendre de nouvelles technologies / un nouveau langage de programmation, ou créer un jeu avec les outils que vous connaissez déjà?

Comme d'autres l'ont suggéré, vous pouvez améliorer votre client de jeu en utilisant des technologies telles que HTML5 et JavaScript. Pour le backend, vous pouvez toujours utiliser PHP. Cela pourrait vous donner suffisamment de nouvelles choses à apprendre tout en bénéficiant de vos compétences en programmation PHP.

bummzack
la source
+1, la programmation du serveur n'est généralement pas difficile, vous êtes limité par le langage du client.
Markus von Broady
5

PHP est toujours pertinent et largement utilisé.

Selon la communauté de programmation TIOBE, PHP est le cinquième langage le plus populaire. Il était en quatrième position l'année dernière. Cette diminution pourrait simplement être due à une augmentation du nombre de technologies disponibles.

Je suppose qu'il existe une corrélation entre la popularité générale du langage de programmation et la popularité du langage de programmation de jeux.

Rails, Django et Node.js sont des frameworks ou des bibliothèques, donc les comparer avec PHP ne fonctionnera pas si bien, au lieu de cela, vous pouvez les comparer avec des frameworks PHP tels que Symfony et CakePHP . Si vous êtes déjà en confiance avec PHP et que vous n'avez pas d'expérience avec Ruby / Python, cela peut valoir la peine d'utiliser l'un d'entre eux.

La plupart de ces cadres offrent une architecture de contrôleur de vue de modèle qui pourrait accélérer le développement et garder votre code plus propre et plus facile à maintenir.

CiscoIPPhone
la source
+1 pour faire la distinction entre langue / interprète et cadre. Mon ami travaille dans une startup dont le backend web est écrit en perl avec le framework Catalyst. Il déteste Perl, mais aime beaucoup la façon dont il est utilisé dans Catalyst.
michael.bartnett
1
-1 pour appeler Node.js un framework ou une bibliothèque. C'est un environnement de script autonome, et à certains égards, il est en fait assez bas, ce qui en fait à mon avis un meilleur candidat pour un backend de jeu que PHP. Pour un développement web normal, vous voudriez mettre un framework dessus juste pour l'amener au niveau d'abstraction de PHP.
aaaaaaaaaaaa
3

Les anciens jeux de sourcils du jour n'ont rien de commun avec ce que vous pouvez réaliser aujourd'hui avec ce qui est disponible.

La grande question concerne le temps réel; si vous souhaitez conserver le même type de conception de jeu qu'un ancien jeu par navigateur, PHP devrait être parfait. Le fait est que le type de jeu était défini par les contraintes de l'époque; Je suppose que si vous avez déjà essayé ces jeux, vous voudrez probablement aller plus loin.

Si vous souhaitez conserver un ancien jeu basé sur le temps statique, vous pouvez très bien garder PHP et peut-être profiter de la toile tendance en HTML5 . Une étape supplémentaire pourrait être de le mélanger avec un peu d' AJAX pour rendre les choses un peu plus «en temps réel» ; vous l'avez probablement déjà utilisé dans vos anciens jeux.

Je ne connais pas les détails des autres outils que vous utilisez, mais je suis familier avec les jeux PHP / AJAX, et avec vos connaissances de base et la nouvelle puissance de HTML5, je pense que tout jeu par navigateur devrait fonctionner assez bien pour vous .

Bien sûr; cela prend pour acquis que vous voulez faire un jeu assez statique.

Jonathan Connell
la source
0

Pour un outil plus moderne, vous pouvez choisir un moteur de jeu propulsé par WebGL. La plupart d'entre eux sont pilotés par JavaScript. Vous pouvez vérifier cette liste , voir si elle correspond à vos besoins.

Quazi Irfan
la source
3
Je pense que la question vise les jeux basés sur des pages Web plutôt que les jeux traditionnels fonctionnant dans un navigateur
Ioachim