Home » Tutorials » Grafik und Spiele » Vier gewinnt

Vier gewinnt

Planung – Warum Häuser von unten nach oben gebaut werden

Alle, die jetzt ihr Delphi geöffnet haben und sofort loslegen wollen, werden sich zunächst einmal zügeln müssen. Denn vor dem Programmieren kommt das wichtigste von allem: die Planung.

Was? Wieso Planung? Ich will kein Haus bauen, sondern Programmieren!
Das ist wohl wahr, aber ein Programm hat da gewisse Ähnlichkeit mit dem Haus. Wenn ich die Wände tapeziert habe und mir dann einfällt, dass die Stromleitungen noch in die Wände müssen, habe ich mehr Arbeit, als wenn ich mir vorher kurz Gedanken mache, was eigentlich alles getan werden muss.
Wehe dem, der jetzt sagt, man kann die Stromleitungen auch außen lang legen und dann baumeln lassen. Das geht zwar, aber da kriegt der Innenarchitekt einen Herzanfall und der andere Programmierer (und auch man selber, wenn man 2 Monate später mal wieder in den Quelltext schaut) kriegt Krämpfe in den Fingern und kann dann nicht mehr programmieren.

Noch wichtiger wird die Planung dann, wenn das Programm für einen Kunden bestimmt ist. Wenn man sich da vorher nicht mit dem Kunden abspricht sagt dieser dann zum fertigen Programm: „Schöne Sache, aber ich wollte eigentlich was ganz anderes“

Kommen wir also zur Planung. Da steht zuerst die Frage: „Was wollen wir überhaupt machen?“.

Da wird uns die Antwort freundlicherweise von der Überschrift gegeben, da steht nämlich was von „Vier gewinnt“. Das ist alles in allem aber doch recht ungenau. Schließlich könnte man das Ganze dreidimensional mit frei beweglicher Kamera machen und dem Ganzen eine nette KI und einen Online-Multiplayer verpassen.
Das übersteigt aber definitiv den Rahmen eines Anfängertutorials. Wer das trotzdem gerne ausprobieren möchte, kann das ja im Anschluss tun und hinterher den zweiten Teil zum Tutorial schreiben.

An dieser Stelle bist du gefragt, dir kurz Gedanken zu machen, was dein Programm unter Berücksichtigung dessen, was du schon kannst und dem, was sich in ein einzelnes Tutorial packen lässt, alles können soll.
Wie jetzt, Gedanken machen? Richtig, du sollst einen Plan aufstellen, wie dein Programm aussieht. Schließlich willst du ja was lernen.

Aufgabe: Erstelle eine grobe Liste dessen, was dein 4-Gewinnt Programm können soll.

Du solltest nun schon eine genauere Vorstellung davon haben, was aus deinem Programm wird. Damit wir hierbei auf einem gleichen Stand sind, habe ich einmal eine Liste zusammengestellt, wie ich mir das Programm vorstelle.

  • Einfache 2D-Darstellung des Spielfeldes
  • Spielmodus für zwei Spieler an einem Rechner
  • Zufälliger Spieler beginnt
  • Automatische Ermittlung des Gewinners
  • Anzeige des Gewinners
  • Möglichkeit zur Einstellung der Spielerfarben und der Breite der Felder
  • Möglichkeit zum Speichern und Laden des Spiels

Nachdem wir nun wissen, was das Programm können soll, ist es durchaus sinnvoll, wenn wir uns, bevor wir anfangen, noch Gedanken machen, wie die GUI (Graphical User Interface = das, was für die Interaktion mit dem User zuständig ist) am Ende
aussehen soll.
Dazu eignen sich am besten ein Blatt Papier und ein Stift. Man kann natürlich auch ein Computerprogramm verwenden, wenn denn ein geeignetes Vorhanden ist.

Hierbei sollte man beachten, dass man dem Ganzen zwar nicht den Löwenanteil der Arbeitszeit widmet, aber es durchaus nicht zu locker nimmt, denn wenn die Bedienung eines Programmes eher bescheiden ist, dann ist es absolut egal, was das Programm kann. Benutzen wird es kaum einer und falls doch, dann nur sehr ungern.

Aufgabe: Erstelle ein Bild, wie du dir dein Programm vorstellst.

Auch hier zeige ich meine Vorstellung davon. Dennoch bist du relativ ungebunden, da das Aussehen weitestgehend unabhängig von der inneren Funktionsweise ist und du daher dein Programm auch anders gestalten kannst. Allerdings sollten schon alle bei mir vorhandenen Komponenten auch da sein, da es sonst zu Problemen im Quelltext kommen kann.

Vier gewinnt: Aufzeichnen