Quad6600 Geschrieben 1. März 2009 Geschrieben 1. März 2009 Hallo Bin ein OO-Neuling und möchte zu Übungszwecken ein Spiel (Mühle,Dame) programmieren. Z.B. Zwei menschliche Spiele an einem (einzigen) PC oder Mensch gegen Computer oder Computer gegen Computer. Oder sogar Mensch gegen Mensch (über TCP/IP-Internet). Volle Grafik muss erstmal nicht sein, zur Not zeichne ich das Spielbrett mit ASCII-Grafik. Hat hier schon mal jemand so etwas gemacht? Wie fange ich an? Ciao Zitieren
TheTobi Geschrieben 1. März 2009 Geschrieben 1. März 2009 Ja ich habe nen Tipp für dich, lern am besten erst richtig Programmieren, fang an mit Textboxen und Buttons und Listener zu Arbeiten und wage dich dann langsam dran kreise oder grafiken zu zeichen....irgendwann kannste dann anfangen an sowas wie mühle oder dame zu denken und dir vorzustellen sowas zu programmiern, das dauert aber schon recht lange und erfordert ein paar grundlegende kentnisse...nicht umsonst sitzten an größeren Spielen mehrere hundert leute Zitieren
perdian Geschrieben 1. März 2009 Geschrieben 1. März 2009 Ja ich habe nen Tipp für dich, lern am besten erst richtig Programmieren, fang an mit Textboxen und Buttons und Listener zu ArbeitenWenn man *richtig* programmieren lernen möchte fängt man *garantiert* nicht mit GUI-Programmierung an. Zitieren
VaNaTiC Geschrieben 1. März 2009 Geschrieben 1. März 2009 (bearbeitet) Um ehrlich zu sein, würde ich erstmal mit einer "alten" prozeduralen Programmiersprache anfangen. Darin kann man prima erlernen, was ein Programm ausmacht, wie Blöcke, Variablen, Funktionen, deren Deklarationen, Definition, ... Daraus lassen sich dann mit unterschiedlichen reservierten Wörtern und den diversen Datentypen, kleine Algorithmen zum Lernen programmieren. Das sollte rein textuell passieren. Wenn man dann was von Zeigerarithmetik, doppelt-verketteten Listen, Suchbäumen, Bitpopelei, Turm von Hanoi, Parsen und viele viele Access Violations bekommen hat, spätestens dann würde ich objektorientiertes Programmieren anschauen. Und das gern mit Java. Aber nicht viel eher, denn die Fehler die man vorher gesucht, gefunden und gefixt oder garnicht erst gemacht, weil gelernt hat, helfen extrem zu verstehen, was Java von anderen Sprachen/Techniken unterscheidet. Bearbeitet 1. März 2009 von VaNaTiC Zitieren
TheTobi Geschrieben 2. März 2009 Geschrieben 2. März 2009 Gut stimmt eigentlich, war davon ausgegangen das er schon ein wenig erfahrung hat und einfach mal was grafisches machen will, also wenn du noch 0 Erfahrung mit Programmierung hast, solltest du erstmal anfangen auf der Kommandozeile rumzuturnen Zitieren
Aldimann Geschrieben 2. März 2009 Geschrieben 2. März 2009 Vorallem zum Einstieg nicht soetwas komplexes wie Schach oder Dame. Such dir was raus was erstmal möglichst einfach ist, um überhaupt zu wissen wie du welches Problem angehen kannst. Zitieren
Quad6600 Geschrieben 4. März 2009 Autor Geschrieben 4. März 2009 mit imperativen Sprachen habe ich Erfahrung, nur mit OO-Sprachen gar keine. Zitieren
VaNaTiC Geschrieben 4. März 2009 Geschrieben 4. März 2009 mit imperativen Sprachen habe ich Erfahrung, nur mit OO-Sprachen gar keine. Das erinnert mich ein wenig an ASM oder AWL Aber mal was anders, wenn Du bereits Erfahrungen hast, wie schaut es dann aus mit erweiterten Datentypen, zum Beispiel struct (C/C++) oder record (Pascal/Modula)? Wenn Du das kennst, würde ich Dir empfehlen darauf aufzubauen und Dir dann anzuschauen, was der Unterschied zu einer Klasse ist. Dabei wirst Du erkennen, dass eine Klasse einfach noch höherer Datentyp ist. Zum Beispiel unterscheiden sich Klassen dadurch, dass diese neben eigenen Membervariablen auch eigene Methoden besitzen und dies gezielt durch Sichtbarkeitsdeklarationen und Vererbung spezialisieren und/oder verwenden können. Daraus ergeben sich dann vielfältige Möglichkeiten sich Klassenstrukturen auszudenken um Code zu abstrahieren und wiederzuverwenden oder besser voneinander zu trennen, ... Alles in allem solltest Du trotzdem nicht zuviele verschiedene Dinge zusammen anpacken, sondern differenzieren und zum Beispiel zuerst einmal mit einem Buch/Tutorial Klassen Objekte und deren Vererbung üben. Danach kann ich nur empfehlen sich mal mit Design Patterns auseinanderzusetzen, allen voran, sowas wie Factory-, Singleton-, Model-View-Controler-, Observer-Pattern, ... Das hilft um später selber komplexere Klassenstrukturen nützlich zu erstellen Danach würd ich mich mit Netzwerkprogrammierung oder einer der Bibliotheken auseinander setzen. Und danach erst mit dem konkreten Spiel. Vom Prinzip her ist Dein Spiel auch nur eine kleine Testanwendung, die Du gern OOP-mäßig implementieren willst, aber ich finde, das wäre einfach zuviel auf einmal. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.