Welche Programmiersprache/n sollte ich lernen, wenn ich Android Spiele entwickeln möchte?

5 Antworten

Diese Frage wurde hier eigentlich schon ziemlich oft ausführlich beantwortet... siehe dazu auch noch einmal weiter unten in meiner Antwort.

Wie bereits unten erwähnt, bieten sich für Android die Sprachen Java, Kotlin oder C++ an.

Bei letzterer Sprache würde ich dir empfehlen, dich mit dem Qt-Framework und der dort auch genutzten Sprache QML vertraut zu machen. QML ähnelt einer Kombination aus CSS und JavaScript, ist also ziemlich einfach zu erlernen. Zusammen mit der Game Engine V-Play lassen sich Spiele generell für mobile Endgeräte gut entwickeln.

Weitere Alternativen sind z.B.:

Schau ansonsten auch hier für Game Engines u.ä..

Außerdem noch ein Verweis auf zwei ältere Antworten von mir:

Wenn es native Spiele sein sollten, dann Java oder Kotlin, denn das sind die Sprachen, mit denen man laut Google unter Android native Anwendungen entwickelt. Eventuell noch C++, damit Du über das NDK Dinge noch beschleunigen kannst.

Alle Entwicklung kann in Android Studio stattfinden, der Standard-Entwicklungsumgebung, die Google für die Android-Entwicklung anbietet.

DerOhnePlan2000 
Fragesteller
 06.06.2018, 11:38

Was ist denn sinvoller, Java, Kotlin oder beides?

0
ohwehohach  06.06.2018, 11:41
@DerOhnePlan2000

Hm - für Deine Zwecke dürfte es egal sein. Kotlin ist da vermutlich einfacher zu lernen. Wenn Du Java lernst, bist Du später halt universeller aufgestellt. Ich habe noch nicht gesehen, dass Kotlin-Entwickler gesucht worden wären. Java-Entwickler aber schon.

Ich konnte erst Java, dann war Kotlin einfach. Umgekehrt ist es vielleicht eher komplizierter. Du machst vermutlich nichts falsch, wenn Du für Dein Projekt direkt Kotlin lernst.

1
DerOhnePlan2000 
Fragesteller
 06.06.2018, 11:42

Dann lerne ich Java. :) habe ja Zeit.

2

Also vorweg: HTML/CSS ist keine Programmierung. Das hat auch nichts damit zu tun, dass ich auf irgendwelchen Begrifflichkeiten herum reiten will, es ist einfach eine Tatsache, dass Softwareentwicklung sehr viel komplexer ist, als HTML und CSS. Wirkliche Anwendungen kannst Du damit nur in Verbindung mit PHP und/oder JavaScript entwickeln.

Um auf deine eigentliche Frage einzugehen:

Schau dir C#, damit hast Du sehr weit gefächerte Möglichkeiten. Zum Einen kannst Du zusammen mit WPF normale Desktop-Anwendungen entwickeln, mit ASP.NET Webseiten, die auch auf Linux laufen und mit Xamarin werden es dann Apps, die (nach dem Versprechen von Xamarin) größtenteils auf Android, iOS und WindowsMobile laufen.

Wenn Du systemnah arbeiten willst, brauchst Du aber nach wie vor C++. Eine entsprechend vorbereitete C++-DLL kannst Du dann aus C# heraus aufrufen.

Mit Java hast Du ähnlich weit gefächerte Möglichkeiten, allerdings merkt man schon, dass Java deutlich älter ist und Microsoft mit C# aus einigen Fehlern von Java gelernt hat.

Die oben genannten Namen (WPF, ASP.NET, Xamarin) sind Frameworks von Microsoft. Für WPF und Xamarin brauchst Du die Beschreibungssprache XAML und für ASP.NET brauchst Du zusätzlich HTML/CSS und JavaScript, C# ist dann für den serverseitigen Code zuständig.

XAML als Beschreibungssprache hat gewisse Gemeinsamkeiten mit HTML. Ich will damit nicht sagen, dass Beides sehr ähnlich ist, aber XAML hat mehr Gemeinsamkeiten mit HTML als andere mir bekannte Konzepte für Oberflächen. Dir dürfte der Einstieg direkt in WPF also etwas leichter fallen, als Anderen, die z.B. mit dem deutlich älteren Framework WinForms gelernt haben.

Ich würde dir auch empfehlen, mit WPF anzufangen, da der Schritt zu Handy-Apps nochmal etwas komplexer ist. Für den Anfang willst Du also eine Umgebung haben, wo Du in Ruhe lernen kannst und nicht auf zig Seiteneffekte, verschiedene Handy-Versionen und Betriebssysteme, etc. achten musst.

Wenn Du lieber Websites entwickeln willst, kannst Du das natürlich auch machen, dann lohnt der Start mit WPF nicht. Für Smartphones brauchst Du dann "nur" noch eine kleine App, die deine Website so darstellt, wie Du es haben willst. Im Bezug auf Platformunabhängigkeit ist eine Website das Zuverlässigste.

Für alles davon empfiehlt sich VisualStudio, die kostenlose Community-Version kann (fast) alles wie die Pro-Version und das ist meist mehr als Du wirklich brauchst.

verreisterNutzer  06.06.2018, 12:16

"... Webseiten, die auch auf Linux laufen " durch diesen Satz hast du deinen langen Text ad absurdum geführt. Warum? Denk mal nach ...

0
Palladin007  06.06.2018, 12:19
@verreisterNutzer

Ich hab vorher geschrieben, dass man mit C# weit gefächerte Möglichkeiten hat und da der Fragensteller Erfahrung mit HTML/CSS hat, ist Website-Entwicklung vielleicht interessant für ihn.

Aber ich gebe zu, ich hätte es ASP.NET Core schreiben sollen, denn das läuft auch auf Linux, ASP.NET ist der Vorgänger und läuft nur auf Windows.

0

Ich kann dir Java empfehlen, da du noch nicht viel Erfahrung hast und sich mit Java trotzdem fast alles machen lässt.