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

30.04.2012, 14:03

Frage zu Büchern und Entwicklungsumgebung

Seid gegrüßt.

Habe mich nun also entschlossen mich hier mal anzumelden, da ich momentan stagniere.

Ich würde also gern in die Programmierung einsteigen, sehr gern Richtung Spiele.
Nun ist es so das ich mir bereits Bücher zu C#, C++ und C geholt habe.
Habe nun also überall dezent reingeguckt, und einige Kapitel abgearbeitet.
Aber irgendwie fühlt sich das falsch an. Ich kann mich nicht entscheiden zwischen den Sprachen.
Würde eigentlich am Anfang erst einmal zu C tendieren, um wirklich das Grundwissen hinter all dem zu erlangen. Oder ist es doch eher ratsam C zu überspringen und einfach gleich C++ zu lernen?
Wenn ja, dann bräuchte ich dazu noch Bücher, das was ich habe ist mir irgendwie zu blöd.
Für die C-Programmierung nutze ich zur Zeit das Open-Book "C von A bis UZ" von Galileo-Computing. Aber das erscheint mir auch irgendwie komisch. Nicht wirklich verständlich oder der Aufbau stört mich.

Hättet ihr noch einige sinnvolle Buchtitel und Hilfestellungen wo man denn nun einsteigen sollte?
Ich weiß die diskussion und die Fragen nerven wahrscheinlich, aber ich komme so einfach nicht vorran. Ich wechsel andauernt hin und her und weiß nicht so recht ob es gut ist was ich da tue, oder mein Ansatz schon verkehrt ist.

Außerdem wollte ich Fragen ob es okay ist Visual Studio Express zu nutzen, oder ob man nicht lieber auf ein kleineres Paket mit Linker und Compiler wechseln sollte.
Irritiert bin ich dadurch das es ja auch direkt Bücher für Visual C++ oder C# gibt.
Gibt es denn da einen so großen Unterschied, zwischen Visual C++ und "Standard" C++?

MfG
Sølûs

Legend

Alter Hase

Beiträge: 731

Beruf: Softwareentwickler

  • Private Nachricht senden

2

30.04.2012, 14:19

Ja, es ist sinnvoll direkt C++ zu nehmen und C zu überspringen, damit du von Anfang eine ordentliche, objekt-orientierte Arbeitsweise lernst und nicht erst in C anfängst prozedural zu denken und das dann wieder über den Haufen werfen musst.
"Wir müssen uns auf unsere Kernkompetenzen konzentrieren!" - "Juhu, wir machen eine Farm auf!"

Netzwerkbibliothek von mir, C#, LGPL: https://sourceforge.net/projects/statetransmitt/

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

3

30.04.2012, 14:23

Im Endeffekt ist es egal, welche Sprache du nimmst. Hauptsache, du kommst mit einer Sprache gut zurecht. Wenn du Spiele entwickeln, schnell Erfolg haben möchtest rate ich dir zu C#. C++ besitzt für Anfänger enorm hohes Fehlerpotential.

Ansonsten kann ich dir noch unseren Wiki-Artikel ans Herz legen, vielleicht hilft dir das: Spiele programmieren lernen

4

30.04.2012, 14:27

Schneller Erfolg ist mir nicht so wichtig. Mir geht es lieber darum es WIRKLICH zu verstehen.
Hatte damals in der Ausbildung VB, und das war auch eher so naja. Man hat zwar alles zusammengeklickt und geschrieben bekommen, aber so richtiges VERSTÄNDNIS kam halt dennoch nicht auf.
Eben die Dinge die im Hintergrund passieren.
Das hat mich irgendwie gestört. Würde das ganze gern von der Pike auf lernen.
Außer natürlich das ist erstmal wirklich zu viel.
Dann schnubbel ich wohl doch zu C# um, da das bis jetzt alles am verständlichsten war (aber mich stört schon wieder das da keine Zeiger etc. genutzt werden, kommt mir dann so vor als würde ich nicht alles lernen.)

MfG
Sølûs

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

5

30.04.2012, 14:44

Du kannst mit C# zum Beispiel erstmal XNA nutzen, um schnell Spiele schreiben zu können. Wenn dich das Interna interessiert, dann kannst du dir SlimDX anschauen, das ist ein .NET Wrapper für DirectX. Damit bist du auf jeden Fall beschäftigt ;). Danach kannst du immer noch C++ lernen, wenn du in der Programmierung prinzipiell sattefest bist. Du verringerst einfach enorm das Riskio, dich an den 1000 Feinheiten von C++ zusätzlich zum Thema Spiele programmieren aufzuhängen.

6

30.04.2012, 14:48

Na dann werf' ich doch wieder das Studio an, hehe.

Hast du eventuell noch eine gute Buchempfehlung für #? Besitze derzeit die Lerndvd mit AntMe von Galileo-Computing sowie dieses Buch http://www.galileocomputing.de/katalog/b…8438A5gM.h-MpHY

Reicht das für den Anfang oder gibt es da bessere Alternativen?

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

7

30.04.2012, 14:58

Das kannst du so nicht sagen: C# hat halt seine eigenen Möglichkeiten mit den Problemen umzugehen. Wie bereits gesagt ist es erst mal egal welche Sprache du nimmst. Objektorientierte Sprachen haben den Vorteil, dass das Denken in Objekten mehr oder weniger dem menschlichen Denken entspricht. Darüber lässt sich jetzt streiten und ich möchte keine Grundsatzdiskussionen darüber anfangen, aber wenn du an ein Auto denkst, dann denkst du an ein Objekt und dieses hat 4 Räder und ein Lenkrad und kann beschleunigen, bremsen etc. Und genau dieses Verständnis kannst du dann halt sehr schön umsetzen. C hat sicherlich auch seinen Reiz, aber für Spiele ist es meiner Meinung nach nicht besonders schön. Gibt aber genug Leute die gerne mit dieser Sprache arbeiten.
C++ ist C sehr ähnlich. Du hast Zeiger etc und kannst sehr technisch programmieren. Weiterhin hast du aber die Möglichkeit Objektorientiert zu programmieren. Es gibt für C++ einige Bibliotheken die dir helfen und dir arbeit abnehmen. Aber alles in allem hast du immer noch sehr viel selbst zu tun und es ist auch nicht mit wenig Aufwand verbunden in dieser Sprache zu programmieren.
C# setzt dann noch mal etwas höher an. Zeiger werden für dich verschleiert und du arbeitest nicht mehr ganz so technisch. Das ist der Vorteil von C#. Dir wird in vielen Fällen etwas arbeit abgenommen. Mit dem Verständnis dahinter hat das meiner Meinung nach weniger zu tun. Es sind einfach ein paar Eigenheiten der Sprache die es sehr angenehm machen damit zu arbeiten. Es ist aber nicht so, wie du es aus der Ausbildung kennst, dass du dir irgendwas zusammenklickst und dann irgendwas fertiges hast, ohne zu wissen was da passiert ist. Du arbeitest im Prinzip genau gleich, nur auf einer leicht höheren Ebene.
Nun das muss jetzt natürlich nicht unbedingt besser/schlechter sein. Beides hat seinen Reiz. Ich habe zum Beispiel erst C++ programmiert. Hatte dann jetzt eine relativ lange C# Phase und arbeite zur Zeit wieder mit C++.
Wenn du es für den Anfang an leichter haben willst, würde ich an deiner Stelle C# lernen. Dir wird ein bisschen Arbeit abgenommen und du kannst den Rest in Ruhe lernen. Dazu kommt, dass man bei C# etwas mehr gezwungen wird, Objektorientiert zu programmieren. Ich schreibe bewusst etwas mehr. Wirklich zwingen kann dich ja niemand;)
Wenn du dich dann in der Welt des Programmierens heimisch fühlst, wird vermutlich eh irgendwann der Zeitpunkt kommen, an dem du dich mit C++ auseinander setzen wirst. Viele Bücher über Programmierung oder auch zu speziellen Themen der Spieleentwicklung benutzen C++ als Beispielsprache und von daher wird der Kontakt mit der Sprache höchstwahrscheinlich irgendwann kommen. Dann kannst du die Eigenheiten von C++ lernen und kennst die Grundlagen schon.
Das wäre mein Vorschlag. Du hattest ja selbst schon geschrieben dass du mit C# anfangen möchtest. Dir soll nur bewusst sein, dass du da nichts wirklich verpasst und hinterher weniger Verständnis von der Sache hast. Du solltest schon von deiner Sache überzeugt sein, ansonsten dauert es keinen Monat bis du wieder zwischen den Sprachen springst;)
Viel Erfolg und vor allem Spaß beim lernen und üben:)


edit:
Ich benutze folgende Bücher als Nachschlagewerk: Nummer1 und Nummer2
Diese sollten sich auch zum lernen gut eignen. Wobei du da weniger jedes Thema lesen musst. Ist halt wirklich sehr umfangreich und man muss am Anfang nicht jede Einzelheit kennen.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

8

30.04.2012, 15:07

Zitat

Dir soll nur bewusst sein, dass du da nichts wirklich verpasst...
Genau darum geht es mir.
Dann bleibe ich doch erst einmal dabei und werde weiter C# machen.
So klingt das für mich doch recht vernünftig.
Dann werden hier also demnächst die ersten Unity-MMORPGs von mir hier reinschneien :p

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

9

30.04.2012, 16:24

Wobei Unity und C# aber eigentlich wenig miteinander zutun haben;) Du kannst unter Unity zwar C# Syntax benutzen, was mit der eigentlichen C# Sprache dann aber auch schon nicht mehr viel mehr zu tun hat. Der Witz mit dem MMO ist mir schon klar aber mit Unity bin ich mir da grad nicht sicher und bevor du da ein falsches Verständnis hast;)
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

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

  • Private Nachricht senden

10

30.04.2012, 16:30

Wobei Unity und C# aber eigentlich wenig miteinander zutun haben;) Du kannst unter Unity zwar C# Syntax benutzen, was mit der eigentlichen C# Sprache dann aber auch schon nicht mehr viel mehr zu tun hat

Die Sprache wird doch durch die Syntax definiert. Wer sie interpretiert oder wofür sie genutzt wird ist der Sprache egal. Es ist ein Kommunikationsmittel.
"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?

Werbeanzeige