Zum Inhalt springen
Der Guide für ein smartes Leben.
VG Wort Pixel
Nicht nur für den Informatik-Unterricht

Greenfoot Dialog

Autor: Walter Saumweber • 3.2.2011 • ca. 2:50 Min

Wombats und Leaves ...

Wombats und Leaves

image.jpg
Die Wombat-Welt und das Klassendiagramm zeigt die Greenfoot-Oberfläche bei geladenem Projekt.
© PC Magazin

Wenn Sie Greenfoot das erste Mal starten, erscheint zunächst der Dialog wie im ersten Bild. Um sich schnellstmöglich mit den wichtigsten Funktionen vertraut zu machen, öffnen Sie Greenfoot am besten gleich mit dem Einführungsprojekt Open tutorial and tutorial scenario.

Danach zeigt sich die Greenfoot-Oberfläche mit dem Klassendiagramm des geladenen Projekts auf der rechten Seite. Projekte heißen in der Greenfoot-Terminologie Scenarios. Über den gleichnamigen Menüpunkt können Sie ein neues Projekt mit Scenario/Open oder Scenario/Open recent öffnen, das aktuelle Projekt schließen (Scenario/Close) oder mit New ein neues Projekt anlegen.

Die Demoprojekte balloons, lunarlander, wombats, wombats2 finden Sie im Ordner scenarios der Greenfoot-Installation, standardmäßig also unter C:\Greenfoot\scenarios. Bei dem geladenen Einführungsszenario handelt es sich um wombats. Im Übrigen können Sie mehrere Szenarien gleichzeitig öffnen. Greenfoot öffnet jedes Projekt in einem eigenen Fenster.

Den größten Teil der Oberfläche nimmt die so genannte Welt im linken Bereich ein. Dort platzieren Sie Objekte und rufen deren Methoden auf. Die für das Verständnis der objektorientierten Programmierung so wichtige Beziehung zwischen Klassen und Objekten - nämlich, dass Objekte Ausprägungen einer bestimmten Klasse sind - stellt sich hier für den Betrachter logisch und ohne Weiteres nachvollziehbar dar.

image.jpg
Oberfläche bei geladenem Projekt. Objekte in der Greenfoot-Welt: Über deren Kontextmenüs rufen Sie deren öffentliche Methoden auf.
© PC Magazin

Wenn Sie sich das Klassendiagramm des Projekts ansehen, so sehen Sie dort die beiden Klassen Wombat und Leaf. Wombats sind in Australien beheimatete Tiere. Näheres finden Sie unter https://de.wikipedia.org/wiki/Wombat , die Klasse Leaf beschreibt ein Blatt - Blätter dienen den Wombats, zumindest im Spiel, als Nahrung.

Um nun Wombats und Leaves zu erzeugen - der Programmierer spricht vom Instanzieren -, klicken Sie die entsprechenden Klassen mit der rechten Maustaste an und wählen die Methode new Wombat() bzw. new Leaf() im aufklappenden Kontextmenü.

Um gleich mehrere Objekte einer bestimmten Klasse zu instanzieren, gehen Sie noch einfacher vor, indem Sie die Klasse im Klassendiagramm selektieren und dann in der Welt bei gedrückter Shift-Taste jeweils dorthin klicken, wo Sie ein Objekt dieser Klasse platzieren wollen. Legen Sie auf diese Weise doch gleich ein paar Wombats mit mehreren Blättern an.

Über das Kontextmenü eines Objekts greifen Sie nun auf alle seine öffentlichen Methoden zu. Soweit diese nicht direkt in der Klasse definiert, sondern geerbt sind, erscheint die Auswahl in einem Untermenü (inherited from <Klassenname>). Um z.B. die Methode move() eines Wombat-Objekts aufzurufen, klicken Sie dieses in der Greenfoot-Welt mit der rechten Maustaste an und wählen dann void move() im aufklappenden Kontextmenü.

image.jpg
Aufruf der Methode setDirection() der Klasse Wombat: Interaktive Parameterübergabe per Dialog.
© PC Magazin

Die Methode ist im Code der Klasse Wombat definiert, also nicht geerbt. Daraufhin bewegt sich das Wombat ein Stückchen nach rechts, falls es nicht bereits am Rand angekommen ist. Die voreingestellte Richtung ändern Sie mit der Methode setDirection(), ein Beispiel für eine Methode, die Informationen, also Parameter erfordert.

Auch diesbezüglich bleibt Ihnen das Codieren erst einmal erspart. Die Parameterübergabe erfolgt per Dialog, wenn Sie die Methode aufrufen.

Geben Sie in das Textfeld einfach den Wert für die gewünschte Richtung ein, 1 für links, 2 für oben oder 3 für unten (die Voreinstellung ist 0 für rechts), und bestätigen Sie mit OK. Das Wombat dreht sich sofort in die entsprechende Richtung. Eine Drehung um 90 Grad gegen den Uhrzeigersinn erreichen Sie auch mit einem Aufruf der parameterlosen Methode turnLeft().

image.jpg
Methode getLeavesEaten(): Rückgabewerte von Methoden erscheinen ebenfalls in einem Dialogfenster.
© PC Magazin

Wenn Sie unten auf die Schaltfläche Act klicken, rufen Sie damit eine gleichnamige Methode der Objekte auf. Im Wombats-Projekt bewegen sich dann alle Wombats auf ein Mal oder fressen Blätter, falls sie welche antreffen. Run führt die Methode act() wiederholt aus. Anschließend bietet es sich an, beispielhaft für ein Wombat-Objekt die Methode getLeavesEaten() aufzurufen.

Die Methode liefert die Anzahl der Blätter, die das Wombat inzwischen vertilgt hat. Die Anzeige erfolgt natürlich in einem Dialogfenster. Während viele grundlegende OOP-Konzepte mit der traditionellen Lehrmethode kaum greifbar sind, stellen sich diese in der Greenfoot-Umgebung geradezu als trivial dar.