|
Java Karol ist eine konsequente Fortführung von Robot Karol für die Programmentwicklung mit der
Programmiersprache Java.
Hierbei finden dieselben Objekte wie bei Robot Karol Verwendung, so dass die Anwender sofort mit dem System
vertraut sind. Die Programme werden jedoch jetzt in Java formuliert und nicht mehr in der speziellen Sprache
Karol. War diese Sprache zum Einstieg in die Programmierung sehr hilfreich und unerlässlich, so stehen den
Schülerinnen und Schülern im fortgeschrittenen Informatikunterricht jetzt die gesamten Möglichkeiten
der mächtigen, objektorientierten Programmiersprache Java zur Verfügung. Von einem direkten Einstieg mit
JavaKarol im Anfängerunterricht wird aus didaktischen Überlegungen abgeraten (Java ist für eine erste
Begegnung mit einer Programmiersprache viel zu komplex).
Die Methoden der Roboter und das Verhalten der Roboter in der Welt wurden aus Robot Karol übernommen.
Darüber hinaus bietet JavaKarol weitere Features (wie zum Beispiel den Einsatz mehrerer Roboter in einer Welt),
die eine Vertiefung in objektorientierter Modellierung/Programmierung unterstützen.
In einer Java-Bibliothek (javakarol.jar) werden die Klassen Roboter und Welt zur
Verfügung gestellt. Die Klasse Welt verwaltet die Objekte, die zur Welt gehören sowie die Darstellung der Welt
in einem Grafikfenster (JavaKarol Fenster).

Beim Neuanlegen eines Objekts der Klasse Welt wird automatisch ein Fenster geöffnet. In der Zeichenfläche
des Fensters werden die Objekte dargestellt, die in der Welt enthalten sind (d. h. Marken, Ziegel, Quader und
Roboter). In manchen Situationen kann der Aufruf einer Robotermethode zu einem Programmabbruch führen
(z. B. "an die Wand gelaufen"). In diesen Fällen wird im unteren Textfeld des Fensters eine Erklärung ausgegeben.
Karolwelten als Ausgangssituation für ein Programm können durch die Ausführung mehrerer Robotermethoden
generiert werden. Das ist aber sehr aufwändig. Es wird empfohlen diese Welten mit der
Programmierumgebung Robot Karol zu erstellen und als Karolwelt-Dateien (*.kdw)
zu speichern. Diese Weltdefinitionen können dann als Grundlage bei der Erzeugung einer neuen Welt (d.h.
eines Objekts der Klasse Welt) verwendet werden.
|