EDU-Version: Unterschied zwischen den Versionen
Mike (Diskussion | Beiträge) (→Konkrete Anwendungen) |
Mike (Diskussion | Beiträge) (→Funktionsweise) |
||
Zeile 26: | Zeile 26: | ||
== Funktionsweise == | == Funktionsweise == | ||
+ | * '''Die Klassen RECHTECK, DREIECK, KREIS, BILD''' | ||
+ | ** Objekte davon erscheinen sofort nach Ergeugung in einem automatisch generierten Grafik-Fenster (Singleton). | ||
+ | ** Es stehen intuitive Standard-Methoden zur Verfügung. | ||
+ | ** Eigene Klassen sollten davon erben oder darauf referenzieren. | ||
+ | * '''Die Klasse SPIEL''' | ||
+ | ** '''Methode ''tick()''''' überschreiben: | ||
+ | *** Was in ihrem Rumpf steht, wird regelmäßig automatisch ausgeführt. | ||
+ | *** Die Wiederholrate wird mit der Methode ''tickerIntervallSetzen(int MilliSekunden)'' eingestellt. | ||
+ | *** Mit der Methode ''tickerStoppen()'' kann der Timer-Task angehalten werden. | ||
+ | ** '''Methode ''tasteReagieren(int code)''''' überschreiben: | ||
+ | *** Jede Taste hat ihren Code (A=0, B=1, ... ) | ||
+ | *** Code bestimmen: Objekt von SPIEL erstellen und Tasten drücken ==> Code wird genannt | ||
+ | *** Die Methode wird bei jedem Tastatur-Event automatisch aufgerufen. Dabei wird der Methode automatisch der Code der entsprechenden Taste übergeben. | ||
+ | *** Durch eine Fallunterscheidung kann man im Rumpf dieser Methode auf verschiedene Tasten reagieren. | ||
+ | ** Die Klasse SPIEL bringt noch weitere hilfreiche Methoden mit. |
Version vom 13. April 2014, 17:30 Uhr
Hier gibt es noch was zu tun: Bitte weitere Beschreibung des Problems hinzufügen!
Inhaltsverzeichnis
Grundgedanke
- Die Grund-Idee zur EDU-Variante der Engine-Alpha ist
- besondere didaktische Reduktion auf das Wesentliche
- völliges verbergen von technischen Details der Sprache JAVA
- In diversen EDU-Klassen - analog zu Klassen aus der Core-Version der Engine-Alpha - werden technisch aufwändige Features durch extrem intuitive und einfach zu bedienende Schnittstellen angeboten:
- einfache geometrische Formen und deren Bewegung
- Darstellung von Grafik-Dateien und deren Bewegung
- vorgefertigte Lage- bzw. Kollisions-Kontrolle
- Reaktion auf Tastatur- und Maus-Ereignisse
- einfache Realsisierung von Timer-Tasks
- Nebenläufigkeit geschieht automatisch
Verwendungskonzepte
- Ganz zu Beginn werden den Schülern fertige und übersetzte Klassen in BlueJ angeboten. Die Lernenden sollen davon Objekte erzeugen, die gleich am Bildschirm in einem Grafik-Fenster erscheinen. Per Klick können sie dann darauf Methoden aufrufen und gleich die entsprechenden Veränderungen beobachten.
- Im nächsten Schritt schreiben die Lernenden ihre erste JAVA-Klasse selbst. Sie reihen die gerade per Maus-Klick ausgeführten Befehle im Deklarations- bzw. Initialisierungs-Teil in eine Datei, wodurch die erstellte Grafik nun quasi gespeichert werden kann.
- Im Laufe des Schuljahres lernen die Schüler immer mehr algorithmische Strukturen in JAVA umzusetzen und bewältigen immer umfangreichere Projekte, die mehr und mehr Eigenaktivität und Kreativität von ihnen verlangt.
- Differenzierung bzgl. des Leistungs-Niveaus ist hierbei sehr leicht möglich, da fast jeder Programmier-Auftrag nahezu beliebig erweitert werden kann.
Konkrete Anwendungen
- EDU_alpha-Formen: Klassen DREIECK, RECHTECK, KREIS
- EDU_alpha-Formen_Zeichnung: erste JAVA-Klasse
- Klasse BILD: Grafik-Dateien
- Klasse SPIEL: Hintergrund-Grafik, Timer-Tasks, Tastatur-Ereignisse, ...
- Taxi-Stand: veranschaulichung von Arrays
Funktionsweise
- Die Klassen RECHTECK, DREIECK, KREIS, BILD
- Objekte davon erscheinen sofort nach Ergeugung in einem automatisch generierten Grafik-Fenster (Singleton).
- Es stehen intuitive Standard-Methoden zur Verfügung.
- Eigene Klassen sollten davon erben oder darauf referenzieren.
- Die Klasse SPIEL
- Methode tick() überschreiben:
- Was in ihrem Rumpf steht, wird regelmäßig automatisch ausgeführt.
- Die Wiederholrate wird mit der Methode tickerIntervallSetzen(int MilliSekunden) eingestellt.
- Mit der Methode tickerStoppen() kann der Timer-Task angehalten werden.
- Methode tasteReagieren(int code) überschreiben:
- Jede Taste hat ihren Code (A=0, B=1, ... )
- Code bestimmen: Objekt von SPIEL erstellen und Tasten drücken ==> Code wird genannt
- Die Methode wird bei jedem Tastatur-Event automatisch aufgerufen. Dabei wird der Methode automatisch der Code der entsprechenden Taste übergeben.
- Durch eine Fallunterscheidung kann man im Rumpf dieser Methode auf verschiedene Tasten reagieren.
- Die Klasse SPIEL bringt noch weitere hilfreiche Methoden mit.
- Methode tick() überschreiben: