Wie relevant ist PHP heute für Browsergames?

12

Ich war vor einigen Jahren der Hauptentwickler von 2 mäßig erfolgreichen Browserspielen und plane, bald an einem neuen Spiel zu arbeiten. Damals habe ich sie in reinem PHP geschrieben (keine Template-Engine oder ähnliches).

Ich würde gerne an einem neuen Spiel arbeiten, war aber schon eine Weile nicht mehr in der Welt der Webentwicklung. Beim Durchlesen höre ich viel Gutes über Rails, Django, Node.js usw., mit denen ich keine Erfahrung habe (obwohl ich mich mit Python, Javascript und den anderen ziemlich gut auskenne).

Meine Frage lautet also: Wenn ich meine alten Wege einschlagen und wieder mit PHP arbeiten würde, würde ich es mir schwer machen? Würde sich die Auswahl von etwas "Trendigerem" wirklich auf meine Entwicklung auswirken?

Hat jemand Hinweise, wie man mit diesen moderneren Tools speziell Browsergames entwickelt?

Bitgarden
quelle
Node.js hat den Vorteil, JSON zu sein, aber Sie werden sich schneller entwickeln können, wenn Sie sich an das halten, was Sie wissen (und PHP hat json_encode und json_decode, wenn Sie mit JSON auf dem Client arbeiten möchten).
thedaian
Bleibe bei PHP5, es ist aktiv entwickelt und hat keine Features, die es unmöglich machen würden, ein gutes Browsergame zu erstellen. Webtechnologien weisen bestimmte Engpässe auf, z. B. den Webserver, den Datenbankserver. Bedenken, die Sie nicht direkt mit Ihrer Sprachauswahl verknüpfen sollten. Die Sprache ist nur die Umgebung, wenn Sie mit PHP vertraut sind, verwenden Sie PHP.
Daemonfire300

Antworten:

13

PHP ist immer noch relevant für Browsergames. Es gibt Tonnen von Unternehmen ( Gameforge , Funzio , Goodgame Studios usw.), die PHP für ihre Online-Spiele verwenden.

Ich denke, PHP und Java sind am weitesten verbreitet, aber etwas wie Node.js und Python zu lernen kann auch von Vorteil sein. Es hängt wirklich davon ab, worauf Sie sich konzentrieren möchten. Lerne neue Technologien / eine neue Programmiersprache oder erstelle ein Spiel mit den Tools, die du bereits kennst?

Wie andere vorgeschlagen haben, können Sie Ihren Game-Client mithilfe von Technologien wie HTML5 und JavaScript verbessern. Für das Backend können Sie weiterhin PHP verwenden. Dadurch erhalten Sie möglicherweise genügend neue Informationen, während Sie dennoch von Ihren PHP-Programmierkenntnissen profitieren können.

Blödmann
quelle
+1, Server-Programmierung ist in der Regel nicht schwer, Sie sind durch die Sprache des Kunden begrenzt.
Markus von Broady
5

PHP ist immer noch relevant und weit verbreitet.

Laut der TIOBE Programming Community ist PHP die fünftbeliebteste Sprache. Es war auf dem vierten Platz im vergangenen Jahr. Dieser Rückgang könnte einfach auf eine Zunahme der verfügbaren Technologien zurückzuführen sein.

Ich gehe davon aus, dass es eine gewisse Korrelation zwischen der allgemeinen Popularität von Programmiersprachen und der Popularität von Spielesprachen gibt.

Rails, Django und Node.js sind Frameworks oder Bibliotheken, so dass ein Vergleich mit PHP nicht so gut funktioniert. Stattdessen können Sie sie mit PHP-Frameworks wie Symfony und CakePHP vergleichen . Wenn Sie bereits mit PHP vertraut sind und keine Erfahrung mit Ruby / Python haben, kann es sich lohnen, eines davon zu verwenden.

Die meisten dieser Frameworks bieten eine Model-View-Controller-Architektur, die die Entwicklung beschleunigen und den Code sauberer und leichter zu warten macht.

CiscoIPPhone
quelle
+1 für die Unterscheidung zwischen Sprache / Dolmetscher und Framework. Mein Freund arbeitet gerade bei einem Startup, dessen Web-Backend mit dem Catalyst-Framework in Perl geschrieben ist. Er hasst Perl, mag aber die Art und Weise, wie es in Catalyst verwendet wird.
michael.bartnett
1
-1 für den Aufruf von Node.js eines Frameworks oder einer Bibliothek. Es ist eine eigenständige Skriptumgebung, und in gewisser Hinsicht ist sie eigentlich ziemlich niedrig, was sie meiner Meinung nach zu einem besseren Kandidaten für ein Spiel-Backend macht als PHP. Für eine normale Webentwicklung möchten Sie ein Framework aufsetzen, um es auf die Abstraktionsebene von PHP zu bringen.
aaaaaaaaaaa
3

Die alten Brower-Spiele des Tages haben nichts mit dem zu tun, was man heute mit dem, was verfügbar ist, erreichen kann.

Die große Frage betrifft die Echtzeit. Wenn Sie die gleiche Art von Spieldesign wie ein altes Browsergame beibehalten möchten, sollte PHP in Ordnung sein. Die Art des Spiels wurde durch die Einschränkungen definiert . Ich denke, wenn Sie sich bereits in diesen Spielen versucht haben, werden Sie wahrscheinlich noch einen Schritt weiter gehen wollen.

Wenn Sie ein älteres, statisch-zeitbasiertes Spiel behalten möchten, können Sie sehr gut mit PHP arbeiten und vielleicht von der trendigen Zeichenfläche in HTML5 profitieren . Ein Schritt weiter könnte darin bestehen, es mit ein bisschen AJAX zu verwechseln , um die Dinge ein bisschen "Echtzeit" zu machen . Sie haben dies wahrscheinlich sowieso in Ihren älteren Spielen verwendet.

Ich kenne keine Details der anderen Tools, die Sie verwenden, aber ich kenne mich mit PHP / AJAX-Spielen aus, und mit Ihrem Grundwissen und der neuen Leistungsfähigkeit von HTML5 bin ich der Meinung, dass jedes Browserspiel ziemlich gut für Sie funktionieren sollte .

Natürlich; Dies setzt voraus, dass Sie ein ziemlich statisches Spiel machen wollen.

Jonathan Connell
quelle
0

Für ein moderneres Tool können Sie eine WebGL-basierte Game-Engine auswählen. Die meisten von ihnen werden von JavaScript gesteuert. Sie können diese Liste überprüfen , um festzustellen , ob eines davon Ihren Anforderungen entspricht.

Quazi Irfan
quelle
3
Ich denke, die Frage zielt eher auf Spiele ab, die auf Webseiten basieren, als auf herkömmliche Spiele, die in einem Browser ausgeführt werden
Ioachim,