BlueJ-Integration

Warum BlueJ?

BlueJ ist eine leicht handzuhabende, speziell auf die Bedürfnisse von Anfängern zugeschnittene freie Entwicklungsumgebung für die Programmiersprache Java. Sie lässt sich so konfigurieren und erweitern, dass auch die Arbeit mit den Robotern optimal unterstützt wird. Zu diesem Zweck stellt Jabotics eine BlueJ-Erweiterung zur Verfügung, die alle benötigten Werkzeuge und Befehle in BlueJ integriert. Die Installation und Konfiguration der Erweiterung werden an anderer Stelle genauer beschrieben. Einen Überblick über die installierten Erweiterungen verschafft man sich in BlueJ über Werkzeuge → Einstellungen... auf dem Reiter Erweiterungen des sich öffnenden Einstellungsfensters. Bei richtig installierter Jabotics-Umgebung stehen in BlueJ eine Reihe von Werkzeugen und dateibezogenen Befehlen für die Arbeit mit Roboterprogrammen zur Verfügung.

Werkzeuge

Ein Untermenü mit allen verfügbaren Werkzeugen erhält man im Projektfenster über die Menüfolge Werkzeuge → Roboter. Die Werkzeuge beziehen sich auf die unterstützte Roboterhardware. Zur Zeit stehen Befehle zur Arbeit mit NXT- sowie EV3-Robotern von Lego zur Verfügung. Für einen NXT-Roboter gehört dazu z.B. das Starten des leJOS-Flash-Werkzeugs zur Übertragung der Java-Firmware. Weitere Details zum Umgang mit NXT- und EV3-Robotern finden sich auf den entsprechenden Folgeseiten. Die Unterstützung von Selbstbau-Robotern auf der Basis eines Raspberry Pi ist für die Zukunft geplant.

Von Jabotics bereitgestellte Werkzeuge

Dateibezogene Befehle

Jabotics ist so konzipiert, dass der Anwender für ein Roboterprogramm eine einzelne Java-Datei anlegt und die gewünschte Funktionalität in der zugehörigen Java-Klasse vollständig implementiert. Alle notwendigen Befehle zum Umgang mit einer solchen Roboterklasse werden über das Kontextmenü (→ Rechtsklick auf das zugehörige Klassensymbol im Projektfenster) bereitgestellt. Dazu gehören z.B. das Starten der Robotersimulation oder das Übertragen des Programms auf einen Roboter. Weitere Details werden auf der Folgeseite Arbeit mit Roboterklassen erläutert.

Kontextmenü für Roboterklassen