dauert C++ oder Java lange zu lernen?

7 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Es kommt drauf an, wie ernst du es nimmst, welche Spiele du programmieren willst und auf welcher Plattform.

Allgemein kann man sagen, dass für Spiele C++ besser geeignet ist. Praktisch alle modernen Spiele werden in C++ programmiert, weil es einerseits die schnellste hohe Programmiersprache ist (C und Assembler zählen nicht dazu) und andererseits sie zusammen mit DirectX, das selbst in C++ geschrieben ist, eine gute Kombination darstellt (für Linux kann man auf OpenGL zurückgreifen). Das sind aber eher Gründe für fortgeschrittene Programmierer. Was dich mehr interessieren sollte, dass es für C++/DirectX sehr viele gute Tutorials zur Spieleprogrammierung gibt (einfach mal Google fragen).

Was die Lernphase angeht, so solltest du, falls du es ernsthaft angehst, in 2-3 Monaten die absoluten Grundlagen soweit drauf haben um irgendeinen Spiele-Klassiker-Clon, wie Snake, Pong oder sogar Tetris programmieren kannst. Du musst aber viel üben und nicht irgendwelche Übungen bzw. Beispiele überspringen, nur weil du nach vorne kommen willst, denn das wird sich schnell rächen und dann hast du keine Lust mehr, weil nichts klappt.

Also immer schön klein anfangen, ein paar Klassiker nachprogrammieren (vlt. sogar irgendwas in Richtung Zelda oder ähnliches http://www.virtual-maxim.de/tilemap-1/) und dabei verschiedene Artikel im Internet lesen und dabei immer an deinem Code rumspielen. Wichtig ist dass du nur kleine Änderungen machst, so dein Programm praktisch immer lauffähig ist, so dass du die Erfolge auch siehst. Du wirst dabei feststellen, dass so schneller besser wirst, als wenn du dir gleich was großes vornimmst und es nicht durchziehst, weil dein Wissen einfach nicht ausreicht.

Nach 12 Monaten kannst du mit 3D anfangen. Am besten du liest davor schon mal in einem Mathebuch zur Vektorrechnung und Trigonometrie. Ohne Mathematik kannst du zwar vielleicht ein 3D-Tutorials durcharbeiten, aber wirklich verstehen und eigenständig arbeiten wirst erst, wenn du auch etwas die Mathematik dahinter verstehst.

Noch was zu Java. Java ist nicht schlecht, und die Lernzeit dürfe etwa genauso sein. Du musst nur sofort mit dem Konzept der Klassen bzw. OOP klar kommen, was zwar generell nicht schwierig ist, aber am Anfang doch sehr umständlich und unverständlich erscheint.

wolfgang1956  26.07.2011, 09:16

Die Zeigerprogrammierung von C++ ist natürlich vieeeeel einfacher. Richtig gut wird es dann mit Zeiger auf Zeiger, Zeiger auf Zeiger von Zeiger … :-))

Klassen und OOP sind auch bei C++ angesagt.

0
gfuser9283  27.07.2011, 14:30
@wolfgang1956

Es zwingt dich keiner Zeiger zu verwenden ;)

Ich habe noch nie einen Zeiger auf Zeiger verwendet.Warum auch? Geht auch ohne wunderbar.

0

C++ als 1. Sprache halte ich für keine so gute Idee, da würde ich erst die Grundlagen mit einer anderen Sprache lernen. Mit denen kann man auch Spiele schreiben (z.B. Python mit Pygame) und man sieht einfacher, was man da eigentlich tut ;)

Wie lange das dauert, bis man ein Spiel schreiben kann, kann man unmöglich sagen; "lange" ist aber sicher nicht falsch ;)

Einfache Spiele bekommt man schon relativ schnell hin wenn man etwas Ahnung von der Sprache hat, aber wenn es 3D sein soll, am besten noch mit einer eigenen Engine dann muss man schon sehr gut sein, sich mit Mathe auskennen und viel Zeit investieren.

Wie wäre es denn mit C# und dem XNA-Framework? Damit lässt sich nach kurzer Zeit bereits was Gutes erstellen. Allerdings kommst auch beim XNA-Framework nicht um sehr gute C#-Kenntnisse herum...


"It seems that perfection is reached not when there is nothing left to add, but when there is nothing left to take away" - Antoine de Saint Exupéry

Twitter: as_no5 URL: http://www.stergatos.de

java ist fast wie C#, nur das java mehr umfang hat. C# ist aber schneller. Aber C++ kann man nicht toppen.

ich bin gerade mitten in der Materie, ist schon recht kompliziert.

Java ist garnicht mit C++ gleichzusetzen,da Java nicht einmal Zeiger hat und wesentlich leichter zu lernen ist.