Android-Spiele programmieren mit Schülern

Teile uns

Für die meisten SchülerInnen – und auch LehrerInnen – ist das Smartphone eine Blackbox. Man kann tolle Sachen machen mit ihm. Aber wie es funktioniert oder wie man es gar selbst programmiert, bleibt den meisten verborgen. Dabei kann es so einfach sein, ein eigenes Spiel für das Android-Handy zu schreiben.

Kürzlich hatte ich Gelegenheit, an einem Kurs der Formi St. Gallen (Fortbildung für MittelschullehrerInnen) das Java-Framework JDroidLib von Ägidius Plüss kennen zu lernen, mit dem sich ohne Mühe Android-Apps schreiben lassen. Dazu ist keine Entwicklungsumgebung nötig. Ein Browser, ein installiertes Java-Runtime-Environment und ein Android-Smartphone reichen. Gamebased Learning at its best!

Turtle-Grafik

Ein guter Einstieg ist die von der PHBern betriebene Seite www.java-online.ch. Dort finden sich verschiedene internetbasierte Lernumgebungen, darunter auch mehrere für Android. Ein guter Einstieg ins Thema ist die Lernumgebung für Turtle-Grafik (java-online.ch/androidturtle/index.php). Dieses Package macht es für die SchülerInnen möglich, ohne grossen Umweg in die Algorithmik einzusteigen. Mit wenigen Befehlen lassen sich bereits anspruchsvolle Figuren zeichnen. Grundlegende Konzepte wie Selektion, Iterationen, eigene Methoden und Rekursion lassen sich mit Turtle-Aufgaben auf „natürliche“ Weise entdecken. Es gibt zudem viele Aufgaben, anhand derer sich die Konzepte festigen lassen.
Die Anwendung ist denkbar einfach. java-online.ch verfügt über einen Online-Editor, in dem die Programme geschrieben werden. Kompiliert werden sie dann durch Klicken auf einen Button. Dieser schickt den Code an einen Webservice, welcher die kompilierte und ausführbare jnlp-Datei zurückschickt. Durch klicken auf einen Link, wird die Datei gestartet, auf das angeschlossene Smartphone übertragen und das Programm dort gestartet. Sollte das alles nicht funktionieren, lässt sich die kompilierte Datei auch mittels QR-Reader auf dem Handy herunterladen und starten. Die genaue Anleitung gibt’s unter java-online.ch/androidturtle/index.php

Gitter-Games

Eine sehr schöne Anwendung für SchülerInnen ist auch die Programmierung von Spielen für das Android-Handy. Auch hier stellt Plüss auf java-online.ch/gamegrid/index.php eine Framework zur Verfügung, mit dem man im Nu ein funktionierendes Spiel hat. Die Basis für diese Spiele bildet immer ein GameGrid, also ein gitterartiges Spielfeld. Damit lassen sich spiele wie Tetris, MasterMind, Vier gewinnt, Pacman, Sokoban etc. programmieren.
Alle Beispiele, die auf der Seite besprochen werden, kommen mit lauffähigem  Code, den man nach Belieben ändern und ergänzen kann. So ist es möglich, ausgehend von einem funktionierenden, jedoch simplen Spiel, eine eigene Spielidee zu verwirklichen. In wenigen Schritten hat man ein eigenes Spiel, das auch anderen weitergegeben werden kann.
Das Framework von Plüss erlaubt es gar, Mehrspieler-Spiele zu entwerfen, bei denen die SpielerInnen über einen Webserver im gleichen Spiel spielen können.

Probleme

Die Frameworks von java-online.ch bereiten sehr viel Spass, wenn alles funktioniert. Man bekommt sofort lauffähigen Code, den man selbst bearbeiten, erweitern oder ändern kann. Wenn allerdings irgend ein Detail nicht funktioniert, geht sofort gar nichts mehr. Die möglichen Fehler lauern überall: Beim Programmiercode, beim Webserver, der den Code kompiliert, bei der Internetverbindung, bei der USB-Verbindung, dem Treiber fürs Smartphone etc.
Oft liegt der Fehler bei der mangelhaften Verbindung zwischen Computer und Smartphone. Dieser lässt sich mit der Möglichkeit, die ausführbare Datei über einen QR-Code herunterzuladen, umgehen. Wenn allerdings der Fehler sonst wo liegt, wird Debugging sehr aufwändig und schwierig.
Werden die Programme über den Online-Editor erstellt, erhält man keinerlei Hilfe, wie man sie sich von Entwicklungsumgebungen gewöhnt ist (Code-Vorschläge, automatische Syntax-Prüfung etc.). Dies lässt sich ausmerzen, indem man die Packages in die eigene IDE integriert. Eine Anleitung für die Integration in Eclipse findet sich hier. Will man dies jedoch auf einem Schulsystem installieren, sollte man sich genügend Zeit für die Konfiguration nehmen. Es ist nicht ganz einfach!

Autoren

Der Formi-Kurs in St.Gallen wurde von Jarka Arnold geleitet. Sie ist Dozentin für Informatik an der PH Bern und Projektleiterin von java-online.ch. Ägidius Plüss ist Professor für Informatik und Informatik-Didaktik an der Universität Bern sowie Lehrer für Physik und Informatik am Gymnasium Neufeld in Bern. Er befasst sich seit Jahren damit, wie sich grundlegende Konzepte der Informatik vermitteln lassen. So hat er nebst Lehrbüchern unzählige Libraries geschrieben, die interessante Anwendungen im Unterricht erlauben. Siehe: www.aplu.ch

(Die Bilder in diesem Post stammen von java-online.ch.)

Links:

1 Kommentar

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert