Was ist heute die "wichtigste" Programmiersprache?

7 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Professionelle Spiele meistens in C++, allerdings werden auch oft weniger geeignete Sprachen benutzt, um Teile einer Grafikengine und andere Bibliotheken "zusammen zu kleben". Minecraft setzt zum Beispiel auf Java, ist damit aber wohl eher eine Ausnahme. Einige Spiele unter Windows benutzen auch C#, oder Plattformunabhängige Titel Python. Im Großen und Ganzen ist man bei Spielen aber mit C++ am besten beraten, wenn man vollständige Kontrolle haben möchte, und evtl. an der Grafikengine rumschrauben möchte. (das ist bei Java, C#, Python, usw. schon allein wegen Sachen wie GC, GIL, JIT, etc. sehr sehr schwierig bis unmöglich)

In vielen Fällen ist es aber gar nicht nötig, selber Low-Level zu programmieren, und Funktionen der Unity, Unreal- oder die CryEngine werden einfach nur "benutzt". Dafür reicht "Klebstoff" in Form von einer JIT-Sprache, oder gar einer einfachen interpretierten Sprache oft auch aus.

Auf dem Desktop werden viele GUI-Anwendungen unter Windows auf Basis von .Net geschrieben (C#, VisualBasic, etc.), allerdings findet man immer noch häufiger etwas ältere Techniken wie die MFC oder gar die Win32 API. Die erste Kategorie wird nicht richtig in Bytecode für eine CPU kompiliert und lässt sich sehr leicht knacken / cracken. Richtig kompilierter Code (MFC, Win32, etc.) wird meist mit C++ kombiniert und dann auch in Maschinencode kompiliert. Eine .Net-EXE und eine "normale" EXE haben intern einen völlig anderen Aufbau. Erstere verwendet eine ähnliche Technik wie Java (JIT) und letztere kommt ohne diese aus.

Weitere beliebte GUI-Frameworks sind wxWidgets, Qt, GTK und FLTK, wobei die letzten beiden wesentlich verbreiteter auf Linux und BSD Systemen zu finden sind, die ersten beiden allerdings auch unter Windows viel Anwendung finden.

Für alles vorhergehende wird meist C++ als Programmiersprache benutzt, obwohl es auch sog. Bindings für Skriptsprachen wie Python & Co gibt.

Zusammenfassend kann man sagen: Es gibt kaum eine Bibliothek, 3D-Engine, oder ein GUI-Framework, was KEINE Unterstützung für C++ hat. Im Gegenteil, die allermeisten dürften in erster Linie darauf abzielen und sich darauf spezialisiert haben.

Darüber hinaus kommt C++ auch im Bereich der Embedded Systeme zum Einsatz.

Wenn du etwas wirklich Universelles suchst, ist C++ mit gaaaanz weitem Abstand die erste Wahl.

Aaaaaber: C++ ist nach Auffassung vieler Programmmierer auch nicht die leichteste Programmiersprache. Viele Anfänger bevorzugen Java oder C#. Erstere ist auch gut geeignet, wenn du Android-Apps schreiben willst. Willst du hingegen 3D-Engines für Android schreiben, nimmst du wieder C++ und das NDK. Fast alle Android 3D Games nehmen eine C++-Engine, und kleben diese wieder mit Java zusammen. Für iOS empfiehlt sich Swift (oder auch Objective-C)

Also, wenn du universell arbeiten willst, nimm C++. Wenn du einen leichten Einstieg suchst, nimm Java, C# oder Python. Aber über kurz oder lang wird eine einzige Programmiersprache sowieso nicht reichen, also lern am besten gleich irgendwann mehrere. Kein wirklich guter Programmierer beherrscht nur eine einzige "Lieblingssprache".

Für den Anfang nimm C++, Java, C# und Python. Die Reihenfolge kannst du dir selber aussuchen! Damit hast du dann erst mal ein paar brauchbare Werkzeuge zur hand.

Viel Spaß! :)

NoHumanBeing  24.06.2015, 08:58

DH! (Auch wenn es diese Funktion inzwischen ja leider nicht mehr gibt.)

1
TeeTier  24.06.2015, 13:48
@NoHumanBeing

Ich hab gerade den Faden verloren: Welche Funktion gibt es nicht mehr? Meinst du die MFC? :)

1
NoHumanBeing  24.06.2015, 18:03
@TeeTier

Nein, ich meine die "Daumen hoch"-Funktion (DH!) für Antworten.

Die Entwickler der Software, auf der diese Plattform läuft, haben sie offensichtlich abgeschafft und durch ein neues Bewertungssystem (das Up-/Downvotes unterstützt, deren Anzahl nicht mehr öffentlich einsehbar ist und deren Benutzung auch nicht mehr zu einer Vergabe von Punkten an den Verfasser einer Antwort führt) ersetzt.

Schade. :-(

1
TeeTier  24.06.2015, 19:14
@NoHumanBeing

Ach so, ja das stimmt. Hier wird irgendwie immer viel am System rumgedoktort. :)

1
NoHumanBeing  24.06.2015, 20:06
@TeeTier

Ist eben eine "ständige Beta" und wir sind die "Tester" (= Versuchskaninchen). ;-)

1
bergerle  24.06.2015, 10:34

genau die richtige antwort in Bezug auf Desktopanwendungen!

Genau das wurde auch in der Frage gefordert, deswegen ist diese Antwort auch hilfreich. Natürlich wächst zur Zeit stetig die Beliebtheit von Web-basierten Anwendungen, die mehr  auf Java, Javascript, PHP etc. setzen, aber das war nicht die Frage...

2

Vermutlich in C++ weil schnell. Wenns ums erlernen einer programmiersprache geht ist es nicht so wichtig welche man lernt. Der umstig ist meist nicht wirklich schwer wenn man sich die besonderheiten der sprache anschaut. Wichtig ist es die Konzepte zu erlernen. Was sind Klassen, vererbung, templates(generics) usw. usw. Und vorallem wie man guten code schreibt.

Die meisten Anwendungsprogramme und Spiele werden sicher in C++ entwickelt sein, Systemcode hingegen hauptsächlich in C.

Viele "Enterprise-Anwendungen" basieren auf Java.

Für Spiele ist C++ am wichtigsten. Für Applikationen konnte auch Java die wichtigste sein.