Buchkritik: Java-Entwicklung für Mobilgeräte

Von Anwendungen für Apples iPhone lässt sich allenthalben hören und lesen, dabei gibt es natürlich unzählige nützliche und unterhaltsame Programme für Mobiltelefone anderer Hersteller.

vorlesen Druckansicht
Lesezeit: 5 Min.
Von
  • Maik Schmidt
Inhaltsverzeichnis

Als kleinster Vertreter der Java-Familie gilt die "Java Micro Edition" (JME). Sie ist so konzipiert, dass sie mit minimalen Hardware-Voraussetzungen auskommt und werkelt in unzähligen "Embedded Systems", wie zum Beispiel in Navigationsgeräten. Die bedeutendste Basis hat sie im Bereich der Mobiltelefone. Hier ist JME auf mehreren hundert Millionen Geräten installiert.

Gemessen an dieser Verbreitung nimmt sich die Anzahl der Bücher über JME eher bescheiden aus. In letzter Zeit sind nun aber gleich drei deutschsprachige Titel zum Thema erschienen.

Ulrich Breymann und Heiko Mosemann haben sich mit Java ME, Anwendungsentwicklung für Handys, PDA und Co., das Ziel gesetzt, alle wichtigen Aspekte zu vermitteln. Außer Java-Kenntnissen setzen sie nichts weiter voraus, und das gilt für alle hier vorgestellten Bücher.

Die beiden Professoren beginnen mit einer kurzen Einführung in die Entwicklungswerkzeuge von Sun. Auch wenn JME-Software auf kleinen Geräten läuft, wird sie dennoch auf herkömmlichen PCs entwickelt. Anschließend lichten sie das Dickicht der vielen unterschiedlichen Ausprägungen. Der Standard ist über die Jahre angewachsen und gewährt Entwicklern einen breiten Spielraum, sodass sich heute viele Variationen in der freien Wildbahn tummeln.

Im Wesentlichen geht es um die wichtigsten Bibliotheken. Diese sind auf JME-Geräten längst nicht so umfangreich wie ihre Geschwister auf anderen Java-Plattformen, bieten aber häufig ganz andere Funktionen. So ist es unter anderem möglich, Telefonfunktionen wie SMS zu nutzen oder per GPS die aktuelle Position des Nutzers zu ermitteln.

Ausführliche Beispiele demonstrieren, was mit modernen Handys möglich ist und bilden eine solide Grundlage für allerlei Anwendungen: Grafische Oberflächen, Netzwerkprogrammierung (mit Sockets, HTTP und SOAP), Audio, Video, Bluetooth und vieles mehr. Darüber hinaus stellen die Autoren das 3D-API vor und machen einen kurzen Ausflug in eine weitere stattliche Domäne von Java ME, den Bereich der Videospiele.

Thomas Lucka nähert sich mit Mobile Games, Spieleprogrammierung für Handys mit Java ME, eben diesem Thema ganzheitlich: Nach einer Vorstellung von Java ME und den dazugehörigen Werkzeugen präsentiert er vollständige Implementierungen aus dem Bereich der wichtigsten Spiele-Genres.

Anhand eines klassischen Weltraum-Shooters, eines Jump'n'Run-Spiels und eines Spiels aus der Top-Down-Perspektive lernt der Leser nicht nur wichtige Techniken, die bei der Spieleprogrammierung auf jeder Plattform zur Anwendung kommen, er erfährt auch, wie er Hardware-Restriktionen mit Hilfe cleverer Tricks überwinden kann.

Bewusst setzt Lucka auf spezifisch erstellte Funktionen sowohl bei der Grafik-Programmierung als auch bei der Kollisionserkennung und meidet die Verwendung des Games-API. Das ist zwar mittlerweile Teil von Java ME, aber nicht auf jedem Gerät verfügbar und nur allzu oft wenig effizient implementiert. Spätestens bei Ausflügen in die "künstliche Intelligenz" von Computergegnern sind ohnehin eigene Kreationen gefragt.

Lucka spart auch Techniken nicht aus, die mit Spiele-Action unmittelbar nichts zu tun haben. Schließlich brauchen auch Spiele eine Bedienoberfläche und müssen Daten speichern können, damit legendäre High-Scores nicht verloren gehen. Auf Netzwerk- und 3D-Spiele geht er ebenfalls ein, vertieft das Thema aber nicht weiter.

Genau hier liegt der Schwerpunkt von Völkls Spiele programmieren mit Java ME. Auch er vermittelt erst einmal die Grundlagen der Spieleprogrammierung und verdeutlicht sie an dem Klassiker Pong und einem 2D-Actionspiel. Er setzt dabei auf das Games-API von Java ME.

Anschließend widmet er sich der Umsetzung von Mehrbenutzerspielen und erklärt die notwendigen Kommunikationsmechanismen sowie Strategien zur Synchronisierung der einzelnen Teilnehmer. In diesem Zusammenhang zeigt er auch Möglichkeiten der Lokalisierung von Spielern auf, die Basis für das sogenannte "Geogaming".

Schließlich geht es ihm um 3D-Spiele. Völkl verwendet zur Definition und Darstellung seiner 3D-Modelle das Mobile 3D Graphics API (M3G). An einem dreidimensionalen Murmelspiel veranschaulicht er Animation, Physik, Steuerung und Kollisionserkennung.

Insgesamt gesehen enthält das Buch von Breymann und Mosemann alles, was ein Java-Programmierer braucht, um Software für Mobiltelefone zu schreiben. Einsteiger, die sich mit dem Gedanken tragen, 2D-Videospiele zu entwickeln, können zu Luckas Werk greifen. Entwickler von 3D- und Netzwerkspielen finden bei Völkl, was sie für ihre Arbeit benötigen.

Wer eines der im Hanser-Verlag erschienenen Bücher ersteht, erhält die jeweilige PDF-Version gratis obendrein. Leider kann sie nur mit dem eBookreader von Adobe gelesen werden. (fm)

Anwendungsprogrammierung in Java für Mobiltelefone
Titel Java ME Mobile Games Spiele programmieren mit Java ME
Untertitel Anwendungsentwicklung für Handys, PDA und Co. Spieleprogrammierung für Handys mit Java ME Handy-Spiele mit 3D-Grafik, Stereosound und Netzwerkanbindung selbst entwickeln
Autor Ulrich Breymann, Heiko Mosemann Thomas Lucka Gerhard Völkl
Erscheinungsort und -jahr München 2008 München 2008 Heidelberg 2008
Verlag Carl Hanser Verlag Carl Hanser Verlag dpunkt.verlag
Seitenzahl 447 338 244
Preis 44,90 EUR 34,90 EUR 32 EUR

(ll)