Java in Greenfoot: Invasion der Greeps! präsentiert im Rahmen des Schnupperstudiums an der Universität Hamburg von: Dr. Axel Schmolitzky Wolf Posdorfer Greeps – Kurzübersicht n n Greeps ist eine Simulation, die mit der Programmiersprache Java in der Entwicklungsumgebung Greenfoot programmiert wurde. Durch Veränderung der Klasse Greep sollt ihr den Akteuren der Simulation etwas Intelligenz einprogrammieren, damit sie möglichst viele Tomaten in ihr Mutterschiff bringen können. Voraussetzungen? n n n Fast keine – ihr müsst nicht programmieren können! Aber Spaß am logischen Denken und dem Lösen von Denksportaufgaben hilft sehr. Wer von euch hat schon Erfahrung im Programmieren? In welchen Sprachen? Was ist Greenfoot? n n n n n Greenfoot ist eine Programmierumgebung für Simulationen und Spiele. Die verwendete Programmiersprache ist Java. Java ist heutzutage sehr verbreitet und wird auch in der Uni als erste Programmiersprache gelernt. Programmieren heißt: dem Computer sagen, was er tun soll! Greenfoot ist kostenlos im Internet verfügbar! Greenfoot in Aktion DEMO Ablauf dieser Woche n n n n Ihr arbeitet jeweils zu zweit an einem Rechner. Ihr bearbeitet ausschließlich die Klasse Greep. Jeden Tag werden eure Greeps ein bisschen schlauer und sammeln (hoffentlich) mehr Tomaten – jeweils am Ende eines Tages (ab morgen) wird eure Implementierung gegen die der anderen Teams antreten. Wer die meisten Tomaten sammelt, gewinnt – aber der Spaß soll im Vordergrund stehen! Der Hauptdarsteller – Erste Schritte n n In der Methode act() könnt ihr eurem Hauptdarsteller sagen, was er tun soll. Was passiert, wenn ihr folgenden Befehl in die Methode schreibt? public void act() { move(); } Steuerung - Konzept if (Bedingung) { Aktion(); } Wenn die Bedingung wahr ist... ...dann führe die Aktion aus! Hier das Semikolon nicht vergessen! Die Regeln für Greeps n n n n n n Regel 1 Nur die Klasse Greep darf bearbeitet werden. Keine andere Klasse darf verändert oder erzeugt werden. Regel 2 Das „Gedächtnis“ eines Greep (ein wenig allgemein nutzbarer Speicher) darf nicht vergrößert werden. Das heißt: Ihr dürft keine Felder hinzufügen ( es sei denn, sie sind final). Regel 3 Greeps kommunizieren nicht direkt. Sie rufen gegenseitig keine Methoden auf und dürfen auch nicht die Felder anderer Greeps einsehen. Regel 4 Keine Fernsicht. Ihr dürft nur in die unmittelbare Umgebung eines Greeps schauen. Greeps sind fast blind und können einfach nicht sehr weit sehen! Regel 5 Keine Erzeugung neuer Objekte. Ihr dürft keine Exemplare von Klassen des Szenarios erzeugen (von benutzerdefinierten Klassen wie Greep oder Paint). Greeps haben keine magischen Kräfte – sie können nicht einfach Dinge aus dem Nichts erzeugen. Regel 6 Kein Teleportieren. Methoden der Klasse Actor, die über die normale Bewegung mit move hinausgehen (wie setLocation), dürfen nicht benutzt werden. Tipps n n n n n n Die Klasse Greep ist eine Subklasse von Creature und Actor. Ihr dürft alle geerbten Methoden dieser Klassen verwenden (nur für Actor gibt es eine Einschränkung, siehe Regel 6). Greeps können kommunizieren, indem sie Farbkleckse (in drei Farben!) auf den Boden spucken. Diese Farbkleckse können benutzt werden, um Informationen für andere Greeps zu liefern. Greeps kommunzieren nicht direkt miteinander (Regel 3). Greeps können nicht allein Tomaten aufladen — sie können nur Tomaten auf andere Greeps laden. Greeps können nicht schwimmen. Ja, sie hassen es sogar, nass zu werden! Dummerweise gibt es aber eine Menge Wasser auf der Erde… Greeps haben nur ein begrenztes Gedächtnis: Ein Byte und zwei boolesche Werte. Ihr könnt dieses Gedächtnis nutzen, wie immer ihr wollt, aber ihr dürft es nicht erweitern. Greeps können nur in ihrer unmittelbaren Nähe etwas erkennen. (Greenfoot bietet prinzipiell die Möglichkeit, weiter in die Umgebung zu schauen, aber für diesen Wettbewerb sind diese Methoden nicht zugelassen.) Hilfe beim Programmieren n n n n Heute gibt es nur eine kurze Einführung in die objektorientierte Programmierung. Ihr könnt mit kleinen Lernfortschritten viel erreichen, habt aber fast sicher nicht von Beginn an die Kenntnisse, um eure Greeps richtig schlau zu machen. In den nächsten Tagen wird immer jemand für Fragen zur Verfügung stehen – ihr solltet das so oft wie möglich nutzen! Ansonsten gilt: Learning by doing! Koordinaten n n Alles, was ihr auf einem Bildschirm sehen könnt, setzt sich aus vielen kleinen Bildschirmpunkten (Pixeln) zusammen. Die Greenfoot-Welt besteht aus Zellen, die bei Greeps einem Pixel entsprechen.
© Copyright 2024 ExpyDoc