Насколько актуален PHP сегодня для браузерных игр?

12

Несколько лет назад я был ведущим разработчиком двух умеренно успешных браузерных игр, и в ближайшее время планирую работать над новой игрой. В то время я писал их на чистом PHP (без шаблонизатора или чего-либо подобного).

Я хотел бы начать работать над новой игрой, но некоторое время не был в мире веб-разработки. Читая вокруг, я слышал много хорошего о Rails, Django, Node.js и т. Д., С которыми у меня нет опыта (хотя я хорошо разбираюсь в Python, Javascript и других).

Итак, мой вопрос заключается в следующем: если бы я пошел по своим старым путям и снова перешел на PHP, я бы усложнил себе задачу? Повлияет ли выбор чего-то более "модного" на мое развитие?

Кроме того, есть ли у кого-нибудь указания относительно разработки браузерных игр с использованием этих более современных инструментов?

Bitgarden
источник
Node.js имеет преимущество в том, что он JSON, но вы сможете быстрее развиваться, придерживаясь того, что знаете (а в PHP есть json_encode и json_decode, если вы хотите работать с JSON на клиенте)
Thedaian
Придерживайтесь PHP5, он активно развивается и не имеет никаких функций, которые делали бы невозможным создание хорошей браузерной игры. Веб-технологии имеют определенные узкие места, такие как веб-сервер, сервер баз данных. Обеспокоенность, вы не должны ссылаться непосредственно на ваш выбор языка. Язык - это просто среда, если вы знакомы с PHP, используйте PHP.
daemonfire300

Ответы:

13

PHP по-прежнему актуален для браузерных игр. Существует множество компаний ( Gameforge , Funzio , Goodgame Studios и т. Д.) , Которые используют PHP для своих онлайн-игр.

Я думаю, что PHP и Java наиболее широко используются, но изучение чего-то вроде Node.js и Python также может быть полезным. Это действительно зависит от того, на чем вы хотите сосредоточиться. Изучите новые технологии / новый язык программирования или создайте игру с инструментами, которые вы уже знаете?

Как и предполагали другие, вы можете улучшить свой игровой клиент, используя такие технологии, как HTML5 и JavaScript. Для бэкэнда вы все еще можете использовать PHP. Это может дать вам достаточно нового материала для изучения, в то время как вы все еще можете воспользоваться своими навыками программирования на PHP.

bummzack
источник
+1, программирование сервера обычно не сложно, вы ограничены языком клиента.
Маркус фон Броади
5

PHP по-прежнему актуален и широко используется.

Согласно TIOBE Programming Community, PHP является пятым по популярности языком. Он был на четвертой позиции в прошлом году. Это снижение может быть связано просто с увеличением количества доступных технологий.

Я предполагаю, что есть некоторая корреляция между общей популярностью языка программирования и популярностью языка программирования игры.

Rails, Django и Node.js - это фреймворки или библиотеки, поэтому сравнение их с PHP не будет работать так хорошо, вместо этого вы можете сравнить их с PHP-фреймворками, такими как Symfony и CakePHP . Если вы уже уверены в PHP и не имеете опыта работы с Ruby / Python, возможно, стоит воспользоваться одним из них.

Большинство из этих платформ предлагают архитектуру модель-представление-контроллер, которая может ускорить разработку и сохранить ваш код более чистым и простым в обслуживании.

CiscoIPPhone
источник
+1 за различие между языком / переводчиком и структурой. Мой друг сейчас работает в стартапе, чей веб-интерфейс написан на Perl с фреймворком Catalyst. Он ненавидит Perl, но ему нравится, как он используется в Catalyst.
Майкл Бартнетт
1
-1 для вызова Node.js фреймворка или библиотеки. Это автономная среда сценариев, и в некотором смысле это довольно низкий уровень, что, на мой взгляд, делает его лучшим кандидатом на игровой бэкэнд, чем PHP. Для нормальной веб-разработки вы бы хотели поместить фреймворк поверх него, просто чтобы довести его до уровня абстракции PHP.
аааааааааааа
3

Старые браузерные игры того времени не имеют ничего общего с тем, что вы можете достичь сегодня с тем, что доступно.

Большой вопрос о реальном времени; если вы хотите сохранить тот же дизайн игры, что и в старой браузерной игре, PHP должен подойти. Дело в том, тип игры был определен с помощью ограничений в то время; Я думаю, если вы уже играли в эти игры, вы, вероятно, захотите сделать еще один шаг вперед.

Если вы хотите сохранить более старую игру, основанную на статическом времени, вы вполне могли бы придерживаться PHP и, возможно, извлечь выгоду из модного холста в HTML5 . Следующим шагом может быть смешать его с небольшим количеством AJAX, чтобы сделать вещи немного «в реальном времени» ; вы, вероятно, использовали это в своих старых играх в любом случае.

Я не знаю специфики других инструментов, о которых вы говорите, но я знаком с играми PHP / AJAX, а также с вашими базовыми знаниями и новой мощью HTML5, я считаю, что любая браузерная игра должна работать очень хорошо для вас ,

Конечно; это факт, что вы хотите сделать довольно статичную игру.

Джонатан Коннелл
источник
0

Для более современного инструмента вы можете выбрать игровой движок на базе WebGL. Большинство из них работают на JavaScript. Вы можете проверить этот список , посмотреть, подходит ли он вам.

Квази Ирфан
источник
3
Я думаю, что этот вопрос направлен на игры на основе веб-страниц, а не на традиционные игры, запускаемые в браузере
Иоахим