Frage von Exporter12, 108

Welche Programmiersprache macht Sinn?

Ich habe bereits eine ähnliche Frage gestellt, zudem gibt es diese auch mehr als einmal..

Dafür möchte ich mich vorab entschuldigen... Jedoch sind die bereits gestellten Fragen recht alt, und ich habe im web auch keine genaue Antwort gefunden.

Zu meiner FRAGE

Ich möchte später mal in der Gaming Branche Arbeiten also selber Spiele miterstellen so, Nun suche ich nach einer Programmiersprache, die auch dafür geeignet ist, vorab ich habe noch ein geringes Wissen im it Bereich. Zudem sollte es eine Sprache sein die sich noch länger "hält". Meine mommentane überlegung wäre Python

Danke im Voraus

Antwort
von PeterKremsner, 80

Ob Python bei der Spieleentwicklung gebraucht wird kann ich nicht
sagen, ich würde aber da eher C++ empfehlen, neuerdings gibt es auch
schon einige Spiele welche mit C# Programmiert werden.

Es hängt
aber auch davon ab was du da machen willst, du wirst mit Sicherheit
nicht das Spiel alleine Programmieren, sondern du kannst zB die Grafik
oder Physikengine entwickeln, da wird hauptsächlich auf C++, C und
Assembler gesetzt, im Bereich der Physikengines kann auch Fortran
Verwendung finden, wissen tu ich es aber nicht.

Die Programmierung
der Interaktionen und der Spielmechanik wird in verschiedenen Sprachen
gemacht, wobei hier auch immer mehr Interpreter Sprachen mit JIT Compiler wie C# verwendet
werden, auch Java ist möglich.

Welche Programmiersprache jedoch wirklich verwendet wird hängt von Unternehmen ab und es gibt auch manche Unternehmen welche selbst eine Programmiersprache entwickelt haben und diese einsetzen.

Mit C++ haben Spiele aber meist etwas zu tun, zumindest die Rechenintensiven Aufgaben in diesen.

Antwort
von Schachpapa, 56

Wenn du noch ganz am Anfang stehst und sowieso mit Python liebäugelst, würde ich zunächst dabei bleiben. Es ist ziemlich mächtig und bringt alles mit ("Batteries included")

Das fertige Programm ist zwar nicht ganz so schnell wie mit compilierten Programmiersprachen, dafür hast du schneller und frustfreier Ergebnisse, ohne dich mit lästigen Details herumschlagen zu müssen.

Für den Anfang (und auch später) ist Python eine tolle Lernsprache. Leider gab's das zu meiner Zeit noch nicht.

Kommentar von Exporter12 ,

mhh nun genau das selbe sagt auch unser Informatik Lehrer alledings spricht ja schonn viel für c und++ wenn ich diese zuerst lerne erleichtere ich mir damit Python?

Kommentar von Schachpapa ,

Eher umgekehrt. Mit Python lernst du ohne Ballast, wie Programmieren funktioniert.

Wenn es dann irgendwann turboschnell sein muss, wartest du entweder 2 Jahre, bis die bessere Hardware dein Programm sowieso doppelt so schnell ablaufen lässt oder du fummelst mit Assembler und C auf Bit-Ebene herum oder du bindest die geschwindigkeitskritischen Teile als C-Prozeduren ein.

(auf das jetzt der Shit-storm auf mich hereinbreche)

Antwort
von CactusCoder1, 10

Also ich würde mir das so vorstellen , es gibt Sprachen die es einem Benutzer unheimlich einfach machen diese Sprache zu erlernen (Zum Beispiel Skript Sprachen) , aber es gibt Sprachen die sind nicht so benutzer freundlich aber dafür würde das Spiel sehr gut laufen (Zum Beispiel Assembler). Deshalb finde ich du solltest etwas finden was zu dir passt . Also da du noch ein Anfänger bist würde ich dir doch raten ein Html 5 Spiel zu entwickeln (Es ist dann ein schönes Web Game , nicht zu schwer um das zu entwickeln mit Javascript , es wäre ein guter start in dieser Branche und das wichtigste man kann damit gut angeben xD . Ich hoffe ich konnte dir helfen :D

Antwort
von DerOnkelJ, 108

C und C++ sind noch immer gefragte Sprachen, da du damit auch sehr hardwarenah programmieren kannst und es hochoptimierende Compiler gibt die den finalen Binärcode sehr schnell machen.

Außerdem kann man sagen, wer C und C++beherrscht kann sich sehr schnell auch in andere Sprachen einarbeiten

Kommentar von Exporter12 ,

Seid mir jetzt nicht böse aber wo genau leigen die Unterschiede zwischen c und c++ und welches sollte ich da zuerst lernen? und wie lange dauert es ungefähr diese zu lernen, da ich noch schüler bin und den Ferien-Bonus genieße, habe ich entschprechend viel Zeit

Kommentar von DerOnkelJ ,

C ist die Urform, und C++ ist stark erweitert worden, insbesondere um den Punkt der Objektorientierung.

Ich würde mit C anfangen, dann kannst du schnell auf C++ aufsteigen wenn du die Grundlagen verstanden hast.

Gute Lehrbücher findest du beim Rheinwerk-Verlag

https://www.rheinwerk-verlag.de/programmierung/cc/

Kommentar von Orsovai ,

Ich empfehle auf keinen Fall mit C zu beginnen, es seidenn, Du möchtest später mal Compiler oder Kernels selbst schreiben.

C++ ist eine C Erweiterung, aber nicht nur irgendeine: C++ ist konzeptionell komplett anders und inzwischen ist auch die Sprachsyntax kaum mehr gleich. Wenn Du C lernst, wirst Du Befehle lernen, die Du in C++ nicht benutzen solltest. Außerdem wirst Du Dich an prozeduales Programmieren gewöhnen, was für Dein Ziel Spiele zu coden völlig falsch ist.

Ich würde behaupten es ist leichter von C++ auf C# oder Java um zusteigen (also sinnvoll umzusteigen) als von C auf C++.

Wenn Dein Ziel wirklich High-End Games sind, dann beginne mit C++.

Hier eine Auswahl exzellenter Literatur dazu:

https://www.amazon.de/C-Programming-Language-Bjarne-Stroustrup/dp/0321563840/ref...

https://www.amazon.de/Standard-Library-Tutorial-Reference/dp/0321623215/ref=sr_1...

Kommentar von Orsovai ,
Antwort
von GunnarPetite, 4

Diese Überlegung hatte ich vor ein paar Jahren auch. Leider habe ich mit C/C++ angefangen und zu allem Übel einen schlechten Fernkurs erwischt. Inzwischen würde ich mich fast als Python-Profi bezeichnen.

Für das Ergebnis von drei Zeilen Python Code braucht man etwa 10 Zeilen C-Quelltext. Zudem musst du dich viel systemnäher mit Datenstrukturen u.a. auseinandersetzen. 

Auf jeden Fall sparst du dir mit Python als Anfänger eine Menge Frust gegenüber einem Start mit C und wirst sehr viel schneller Erfolgserlebnisse genießen. 

Als Einstieg empfehle ich den Kurs vom Hasso-Plattner-Institut

http://open.hpi.de



Antwort
von JohanaRambowski, 89

Hallo,

Game Development wird mittlerweile recht stark abstrahiert (zumindest im Profilager), so das die Verwendung einer High-Level Sprache hier Sinn macht. Welche man nehmen muss ist abhängig der Game Engine bzw Transcompilers. Übliches Vorgehen:

Native Games: High Level Sprache XY (Lua, Unity, C#, Javascript, Java,
Python, Ruby,...) oder/und Mid Level Sprache C++ -> Game Engine (C++)
-> G++ und Transcompiler -> Bare metal Bytecode

Web Games: High Level Sprache XY (Lua, Unity, C#, Javascript, Java, Python, Ruby,...) oder/und Mid Level Sprache C++ -> Game Engine (C++) -> G++ und Transcompiler -> Emscripten -> Javascript code -> JIT Bytecode

LG

Johana Rambowski

Antwort
von onlythreesixtee, 89

Bei Game Development ist die Sprache C# üblich

Kommentar von Orsovai ,

Nö...bei manchen Games.

High-End Games werden in C++ geschrieben, C# ist dafür einfach nicht schnell genug.

Kommentar von Mikkey ,

Es macht generell nicht viel Sinn, ein Spiel ausgerechnet in C# zu entwickeln.

1. C# ist langsam verglichen mit C++ und verschiedenen anderen Sprachen

2. C# läuft aktuell nur in Windows, der Markt ist also entsprechend schmaler.

Antwort
von herakles3000, 32

Wen du keine Erfahrungen beim Programmierern hast dann fange mit dem Basic an da es in Allen anderen Computersprachen vorkommt.

Antwort
von sigaint, 72

Ich würde dir mehr C++ empfehlen :)

Antwort
von Omnivore11, 12

Spiele werden in der Regeln in C++ geschrieben

Keine passende Antwort gefunden?

Fragen Sie die Community