Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

21.07.2010, 02:54

Ist das Lernen von C++ ein Muss?

Guten Tag,
ich lerne derzeit Programmieren im 50:50 Verhältnis von C# und C++.
Ich möchte sowohl "normale" Anwendungen als auch Spiele programmieren. Fokus sollte die GUI-Programmierung sein.
Nun ist es so, dass ich C# stark bevorzuge. Während ich in der Sauberkeit von C# gerne auch mal programmiere(nicht nur zusammenklicke), gefällt mir dieser Pointerhaufen und "dreckige" Code von C++ ganz und garnicht. Andernseits wurde mir aber gesagt, ich solle C++ auf jeden Fall lernen.

Was ist denn nun wahr? Habe ich auch ohne C++, nur mit C#, Java und eventuell noch PHP und MySQL(flexibler) Chancen auf dem Arbeitsmarkt? Oder muss man heutzutage einfach C++ können und ist ohne kein richtiger Programmierer?

Um zur Information noch einmal zur Spieleprogrammierung zu kommen. Ich habe nicht vor, irgendwelche größeren Spiele zu programmieren. Das Limit würde sich bei Aufbauspielen wie Theme Hospital begrenzen. Hauptfokus wäre wie gesagt die Gui-Programmierung.

Liebe Grüße,

2

21.07.2010, 03:11

Dann schau dich für C# mal nach XNA um.

C++ ist keineswegs Pflicht. Es ist schön, wenn mans irgendwohin schreiben kann, aber mehr auch nicht. Genauso wie jede andere Programmiersprache. Es kommt einfach drauf an, was der Betrieb in den du gehst, vorgibt. Soll sogar welche geben, die VB.Net nutzen ;)

3

21.07.2010, 08:06

Hallo

Einzelne Programmiersprachen sind nie Pflicht, sondern immer nur Werkzeug zur Problemlösung. Bei Programmierern von Spielen ist C++ sehr beliebt, aber wenn du auf C# stehst (geht mir ähnlich), schau dir XNA und du wirst bestimmt glücklich.

chrische

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

4

21.07.2010, 08:51

dieser Pointerhaufen und "dreckige" Code von C++

das liest man als c++ fan überhaupt nicht gern. nur weil du anscheinend probleme hast den überblick zu behalten ist der code noch lang nicht dreckig. solltest du vielleicht ab jetzt anders formulieren. ansonsten stimm ich den anderen zu.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Beiträge: 721

Wohnort: /dev/null

Beruf: Software-Entwickler/Nerd

  • Private Nachricht senden

5

21.07.2010, 08:59

Alternative zu XNA + C# ist immernoch SlimDX. Die haben auch schon ziemlich schöne Interfaces und geben einem viele Möglichkeiten. SlimDX ist AFAIK auch schneller als XNA.

BLU3 L30PARD

Treue Seele

Beiträge: 336

Wohnort: Hoch oben im Norden Schleswig Holsteins

Beruf: Schüler

  • Private Nachricht senden

6

21.07.2010, 10:17

Ich denke mal, C++ drauf zu haben ist keinesfalls zwingend notwendig.
Jedoch ist C++ meines erachtens die beste Programmiersprache für Systemnahes Programmieren ;)

Außerdem kann es immer sein, dass du in deinem unternehmen mal mit Java etc Programmieren musst, und da C++ einen zum teil sehr großen einfluss auf Sprachen wie Java, C# etc hat...
Andererseits sind Dinge wie Zeiger ja nicht mehr in Java und C# enthalten, also reicht es auch wenn du C# lernt ;)

Wie schon oft gesagt: ich liebe C++! gerade wegen der systemnähe :)
Außerdem mag ich es, meine Programme VOLLSTÄNDIG selbst zu schreiben.
Ich klicke mir nicht gerne GUIs zusammen und hasse Frameworks, die der User zwingend installieren muss. Mit c++ packst du ein paar dlls dazu und gut ist(auch wenn das einiges an Speicher frisst(bei Qt haben die standard-dlls 10MB!!!)) ...

Und ich sag mal so: ein richtiger Programmierer bist du glaube ich, sobald du dein erstes richtiges Programm geschrieben hast. Das ist bei mir inder Schule ganz lustig ;)
Ich bastel mal kurz in ner Pause ein rechner zusammen der Punkt-vor-Strich und klammerrechnung beherscht, will das erklären und alle denken ich bin ein Pro ;)
Also allein ein solches Programm hebt dich von allen anderen "nicht Programmierern" ab ;)
Ob du jetzt mit Java, C#, C++ oder PHP (oder auch flash/flex) programmierst.

Ich hoffe mal, ich hab hier kein mist erzählt... korrigiert mich wenn ja ;)

7

21.07.2010, 10:24

Im Bereich Anwendungsentwicklung für Unternehmen wirst du in meinen Augen wahrscheinlich sowieso eher auf Java oder vielleicht noch PHP und C# stoßen. Jedenfalls, wenn es sich um Software handelt, die nichts mit CAD zu tun hat und nicht mit Hardwaresystemen eng zusammenarbeiten muss.
Die Option etwas "komplett selbst zu schreiben" wird in Unternehmen meistens nur bei den Kernfunktionen einer Anwendung, die man vollständig kontrollieren will, in Betracht gezogen - für den ganzen Rest wäre das reine Geldverschwendung.

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »Chromanoid« (21.07.2010, 10:38)


Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

8

21.07.2010, 10:38

Zunächst muss ich eindeutig zustimmen, dass C++ bei weitem kein "Muss" ist und gerade bei GUI und Toolentwicklung meiner Erfahrung nach eher eine zweitrange Rolle spielt (C++ muss man viele Sachen erst "beibringen" was andere Spachen von Hausaus mitgegeben bekamen).
Ein Punkt den ich noch nicht fand:
Ein klarer Pluspunkt für das Lernen von C++ ist, dass man viel besser versteht, was im Hintergrund alles abläuft. C++ ist in gewisser Weise das Latein der Programmiersprachen. Genauso wie Latein den westlichen Sprachraum deutlich beeinflusst hat, so hat auch C++ die Welt der Programmiersprachen beeinflusst.
Wie oft sehe ich das mangelnde Verständnis von z.B. Speicherverwaltung in vielen der Sprachen die mit einem GC daherkommen. Natürlich muss man sich nicht zwangsläufig damit abgeben, aber oft hilft das Grundverständnis gewaltig.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

9

21.07.2010, 10:45

Naja allerdings lässt sich dieses Grundverständnis auch mit anderen Sprachen, die ohne GC laufen erwerben. Delphi/ObjectPascal wäre da zum Beispiel eine Alternative.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

10

21.07.2010, 10:46

Ein klarer Pluspunkt für das Lernen von C++ ist, dass man viel besser versteht, was im Hintergrund alles abläuft.
Das wäre dann eher Assembler, was ja zum Glück noch an vielen Universitäten Pflicht- oder zumindest Wahlfach ist, auch wenn wohl nicht mehr die neueste Generation. Aber immerhin. Mit C++ allein lernt man jedenfalls nicht, wie und wieso ein Exploit eines Buffers im Stack funktioniert und wie man sich davor schützen kann - einer der noch immer gefährlichsten und üblichsten Lücken in jeder Software.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige