Der große Guide: Welche Programmiersprache sollte man lernen?

Viele spielen mit dem Gedanken, aber nur wenige setzen ihn um: Programmieren lernen. Die Welt der Programmiersprachen wird langsam immer einsteigerfreundlicher und vielseitiger. Nicht umsonst sind Java und C mit jeweils rund 20 Prozent Marktanteil die populärsten Sprachen. Doch man sollte nicht nur auf die absoluten Zahlen achten: C++ verliert seit Jahren stetig an Marktmacht, dennoch ist die Sprache absolut unersetzbar für spezielle Programmarten, insbesondere Videospiele. Heute unerlässlich sind objektorientierte Programmiersprachen, denn diese Art der Programmierung erleichtert die Wartung und Erweiterung eines Programms – in der Zeit von ständigen Software-Updates nicht mehr wegzudenken. Welche Sprache sollte man aber lernen, wenn man Apps entwickeln, Spiele programmieren möchte? Der folgende Guide gibt eine Übersicht darüber, welche Programmiersprache zu wem passt.

Was kommt auf mich zu?

Viele Programmier-Einsteiger träumen vom eigenen Videospiel, der eigenen App oder umfangreichen Programmen, die sie entwerfen möchten. Die gute Nachricht: Mit Programmiersprachen wie Python fällt der Einstieg leicht! Spätestens, wenn man dann aber wirklich komplexere Anwendungen, Spiele oder Smartphone-Apps programmieren will, kommt man nicht umhin, Konzepte wie Klassen oder Vererbung zu verstehen: Klassen sind in der objektorientierten Programmierung abstrakte Modelle für eine Reihe von ähnlichen Objekten und beschreiben deren Attribute und Methoden. Durch Vererbung können Klassen in hierarchischen Verbindungen zueinander stehen; zu den Basisklassen kommen dann abgeleitete Klassen dazu. Programmiert man zum Beispiel ein einfaches Textadventure, könnte die Basisklasse „Character“ heißen. Diese besitzt eine Methode namens „bewegen“. Wird die Methode ausgeführt, so erscheint der Text „Deine Spielfigur bewegt sich“ auf dem Bildschirm. Eine abgeleitete Klasse könnte zum Beispiel „Fahrrad“ heißen. Das Fahrrad kann sich ebenfalls bewegen (es erbt die Eigenschaften der Basisklasse), gibt jedoch einen anderen Print aus: „Dein Fahrrad fährt“. Außerdem kann die abgeleitete Klasse über zusätzliche Methoden im Vergleich zur Basisklasse verfügen.
Inzwischen gibt es Tools auch online zu finden, die den Einstieg in das Programmieren erleichtern. Es ist oftmals nicht vonnöten, sich gleich zu Beginn mit den komplexen Details zu beschäftigen. Zudem sind die Überschneidungen groß – wer die Grundlagen von Python beherrscht, kann sich auch schnell in JavaScript oder PHP einarbeiten. Welche Programmiersprachen kommen nun aber für welche Verwendung am ehesten infrage?

Computer auf Schreibtisch mit zwei Monitoren

C++: Für Spieleentwickler mit Biss

Der Klassiker C++ ist eine von der ISO genormte Programmiersprache und existiert bereits seit 1979. C++ wird vor allem in der Systemprogrammierung und der Anwendungsprogrammierung eingesetzt, wird aber hier seit der Jahrtausendwende zunehmend von Java verdrängt. Die Sprache verwendet nur rund 60 Schlüsselwörter, manche (wie „static“ und „default“) werden dabei mehrfach verwendet. Dank der Standardbibliothek beherrscht C++ Arrays, Vektoren, Listen und andere Kniffe wie Frameworks und weitere Bibliotheken. Dafür eignet sich die Sprache sehr gut für einen äußerst populären Bereich der Programmierung: Videospiele. Das liegt vor allem daran, dass es nur wenig Alternative gibt, da alle nicht objektorientierten Programmiersprachen für Spiele wegfallen. Das gilt auch für nicht-normierte Sprachen, da diese eine Kollaboration über dutzende Entwickler fast unmöglich machen.
Viele bekannte Spiele sind daher in C++ geschrieben, darunter das 2009 veröffentlichte und auf Amazon erhältliche Wolfenstein-Remake, sowie auch Unreal Tournament, Bioshock und Deus Ex. Die Fortsetzung zu Wolfenstein: Return to the Castle verwendete die id Tech 4 Software, welche vor der Produktion des Spiels von C zu C++ wechselte. Von seinem Vorläufer setzte sich das neue Game dadurch insbesondere in der Grafik ab: Der schnelle Spielverlauf, der den Reiz von Wolfenstein ausmacht, konnte durch die neue Software durchgehen in besserer Auflösung ablaufen. Heute sind viele der im Web spielbaren Games sind mit C++ geschrieben: Wer simple Browser-Games spielt, der hat es sehr oft mit einfachen Flash-Anwendungen zu tun, doch bereits bei Online-Glücksspielen sind die Anforderungen hierfür zu komplex. Das 2006 gegründete Online-Casino-Unternehmen Betway setzt beispielsweise ausschließlich auf einen der führenden Spieleentwickler, Microgaming. Dieser legt großen Wert auf die Flexibilität aller angebotenen Games, sodass letztere auf sämtlichen Plattformen genutzt werden können – ein Vorteil für Anbieter und Spieler. Genau diese Flexibilität wird bisher vor allem mit C++ gewährleistet, so verwundert es nicht, dass die Titel des Anbieters von Casinospielen C++ als Basis verwenden.
Zwar heißt es damit für angehende Spieleentwickler: Zähne zusammenbeißen! Doch wer ausreichend Geduld mitbringt, der kann sich auch in das relativ komplexe C++ einarbeiten – und ist dann am Ende deutlich weniger limitiert bei der Umsetzung des eigenen Traumspiels. Wer dagegen eher zu den ungeduldigen Naturen gehört, sollte vielleicht auf eine andere Sprache umsteigen; hier empfiehlt sich vor allem Python.

Python: Für Einsteiger

Python eignet sich für Unentschlossene, Leute, die einfach anfangen wollen zu programmieren und Menschen mit ernsthaften Ambitionen, die Anwendungen für Facebook oder Google erstellen wollen. Python ist eine Skriptsprache und unterstützt objektorientierte, aspektorientierte und funktionale Programmierung. Hier kann man schnell loslegen, ohne sich direkt über Objekte und Klassen den Kopf zu zerbrechen. Dank Python ist der Übergang von simplen Batch- oder Shell-Skripten zu einem richtigen Programm fließend geworden. Dazu kommt eine umfangreiche Menge an Frameworks, welche die Programmierung erleichtern: Ein Framework dient als eine Art Gerüst oder Rahmen für den Programmierer, bekannt ist zum Beispiel das .NET Framework für Microsoft-Anwendungen, aber auch Frameworks für das Kompilieren und Anpassen von Apps an verschiedene Betriebssysteme werden immer beliebter. Python wurde absichtlich so gestaltet, dass es mit wenigen Schlüsselwörtern zurechtkommt und ist daher besonders für Einsteiger sehr gut geeignet. Wer schon immer mit dem Gedanken spielte, Programmieren zu lernen, kann mit Python gut die ersten Schritte machen.

Screenshot highlighted Code einer Programmiersprache

Java, Swift und Objective C: Für App-Entwickler

Angehende App-Entwickler sollten sich auf Java, Objective C und Swift konzentrieren. Java und seine Alternativen empfehlen sich vor allem für Menschen, die bereits erste Erfahrungen mit Programmiersprachen gesammelt haben, da man bei Java-Programmen kaum darum herumkommt, sich Gedanken um Klassen und Objekte zu machen. Ansonsten zeichnet sich Java allerdings durch Vielseitigkeit aus. Für die Entwicklung für Android Geräte sind Java-Kenntnisse zudem unerlässlich. Allerdings darf auch iOS (trotz eines Marktanteils von lediglich 23,8 Prozent in Deutschland) nicht vernachlässigt werden: Wer mit seiner App eine große Zielgruppe erreichen will, schafft dies nur durch das Angebot von Apps sowohl für Android, als auch iOS. Hier ist Objective C die Sprache der Wahl für App-Entwickler. Seit einiger Zeit bietet Apple seine eigene Programmiersprache Swift an, die extra so konzipiert wurde, dass sie leicht zu erlernen ist und dem Entwickler viele Hilfestellungen bietet – ein guter Einstiegspunkt für Entwickler. Ganz wichtig: Wer für Mac oder iOS entwickeln möchte, kann dies nur auf Produkten von Apple tun, ist also auf ein Macbook Pro oder einen iMac angewiesen, die man über den offiziellen Store von Apple kaufen kann.
Wer sowohl für iOS als auch für Android programmieren möchte, dem nehmen Frameworks wie CakePHP oder React Native viel Arbeit ab, weil sie den Code automatisch an das jeweilige Betriebssystem anpassen – so müssen viele Dinge nur einmal geschrieben und nicht doppelt angepasst werden.

Fazit

Die passende Programmiersprache für den Einstieg zu finden, kann schwierig sein, sollte einen jedoch nicht davon abhalten, das Projekt anzugehen. Für Einsteiger eignet sich Python gut, für App-Entwickler Java und Swift. Wer hingegen Spiele programmieren möchte, der kommt um C++ nach wie vor nicht herum. Inzwischen gibt es zum Glück viele gute Tutorials im Internet, sowie Studiengänge zum Thema.

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.