Anwendungsentwicklung für Tablet-PCs – Eine Standortbestimmung

9. März 2012

Ich erinnere mich noch gut daran, wie ich vor etwa einem Jahr von einem Bekannten wegen meinem 4 Zoll großen Smartphone die etwas schnippische Bemerkung zu hören bekam: “Ein größeres hatten sie wohl nicht im Laden…”. Heutzutage reicht eine kurze Zugfahrt aus, um festzustellen, dass 4 Zoll fast schon Standard sind, wohlgemerkt nicht nur bei den Smartphones, sondern bei den Mobiltelefonen insgesamt. Und zwischen den gebannt auf ihre Smartphones starrenden Zuggästen (ob man das gut oder schlecht findet, steht auf einem anderen Blatt), sind die lässig auf ihren noch größeren Bildschirmen hin und her wischenden Tablet-PC-Ästheten längst keine Exoten mehr, sondern auf dem besten Wege, die zuvor omnipräsenten Business-Notebook-Besitzer zu einer Minderheit werden zu lassen.

Auch wenn ich für meine Impressionen aus dem Zug nicht den Anspruch der Repräsentativität erheben kann, passen diese doch gut zu den Berichten, wonach sich die Verkaufszahlen für Tablet-PCs zwischen 2010 und 2011 von 800.000 Stück auf 2,1 Millionen Stück mehr als verdoppelt haben. Zudem wird für 2012 erwartet, dass jedes zweite verkaufte Handy ein Smartphone ist (Quelle: Golem.de). Mit anderen Worten: Hier ist in 1-2 Jahren ein Massenmarkt herangewachsen, an dem kein Unternehmen mit Endkundengeschäft mehr vorbei kommt. Doch auch innerhalb der Unternehmen wachsen die Begehrlichkeiten nach Software, die sich komfortabel mit touchfähigen Geräten bedienen lässt und auf kurzen Wegen optisch ansprechende Ergebnisse liefert. Manche IT-Abteilung wird es in den nächsten Jahren schwer haben, dem Management zu erklären, warum dieses sich zum Abruf der Unternehmenszahlen durch verschachtelte Menüs im 90er-Jahre-Stil hangeln muss.

Tablet-PCs auf dem Weg ins Unternehmensumfeld

Es ist also an der Zeit, sich mit der Software-Entwicklung für die neuen Geräteklassen zu beschäftigen, von denen sich die Tablet-PCs dank ihrer größeren Darstellungsfläche am besten für die Umsetzung komplexerer Anwendungen und die Visualisierung umfangreicher Datenmengen eignen. Aus diesem Grund sollen Tablet-PCs im Mittelpunkt der im Folgenden angestellten Überlegungen stehen, wobei sich fast alle Aussagen und Empfehlungen ohne weiteres auch auf Smartphones übertragen lassen.

Zu Beginn der Entwicklung einer mobilen Applikation stellt sich die Frage nach den Plattformen, auf denen diese lauffähig sein soll. Momentan teilen Apple (iOS) und Google (Android) den Tablet-Markt fast vollständig untereinander auf, wobei iOS immer den Markt nach wie vor dominiert, aber Android gerade stark im Kommen ist. Im 4. Quartal 2011 hatten das iPad 1+2 einen Markanteil von 57,5%, Android kam auf 39,2% und alle anderen Betriebssysteme lagen zusammen bei nur etwas über 3% (Quelle: heise.de). Diese überschaubare Marktsituation bringt es mit sich, dass es in den meisten Fällen hinreichend ist, eine Applikation für iOS und Android zu entwickeln, wenn man sich nicht sogar für eines der beiden Systeme entscheidet, was im Unternehmensumfeld natürlich leichter fällt, als wenn man annähernd die Hälfte seines potentiellen Kundenkreises von vorneherein ausschließt.

Plattformübergreifend in die Zukunft dank HTML5

Deswegen gibt es inzwischen eine ganze Reihe von Frameworks für die parallele Entwicklung von Applikationen für mehrere Plattformen. Idealerweise sollte man damit die gleiche Applikation quasi mit einem Klick für mehrere Plattformen, das heißt, zumindest für iOS und Android, kompilieren können. HTML5 ist in diesem Zusammenhang nicht mehr ein Buzz-Word sondern das Zauberwort, weil auf keinem dieser Geräte eine hoffnungslos veraltete Browser-Engine vom Schlage eines Internet Explorer 6 ihr Werk verrichtet – das wäre dann die gute Nachricht.

Die schlechte Nachricht ist, dass eine HTML5-Applikation damit noch längst nicht “genauso gut” auf allen populären Tablets läuft, weil es zwischen den Geräten beträchtliche Unterschiede gibt, nicht nur bei der Unterstützung des nicht finalisierten HTML5-Standards, sondern auch bezüglich Ausführungsgeschwindigkeit, Auflösung und Seitenverhältnis. Zu allem Überfluss lassen sich Tablets auch noch vom breiten “Landscape”-Modus in den hohen “Portrait”-Modus drehen, was dramatische Folgen für das Layout einer laufenden Anwendung haben kann und die Unterschiede zwischen 4:3-Displays und 16:9-Displays noch verstärkt. Und wer gewährleistet mir, dass meine Anwendung mit dem Framework, für das ich mich entschieden habe, in Zukunft auch auf Tablets mit Windows 8 laufen wird? Was ist eigentlich, wenn mit der nächsten Tablet-Generation auch die Auflösungen spürbar ansteigen? Skaliert meine Anwendung dann mit oder werden all die verstecken Browserschranken, die mein Framework-Anbieter eingebaut hat, bis zum nächsten großen Update dafür sorgen, dass ein substantieller Teil der Benutzer meine Anwendung nur in der Miniaturansicht zu sehen bekommt?

Alle diese Fragestellungen zeigen vor allem eines: Die Situation ist und bleibt in nächster Zeit trotz der millionenfach verkauften und millionenfach genutzten mobilen Endgeräte unübersichtlich. Deswegen bauen wir in der SDX momentan verstärkt Know-How in der Entwicklung von Frameworks auf, die direkt im Browser des jeweiligen Mobilgerätes laufen, also nicht von einer nativen “Ummantelung” abhängig sind. Die populärsten Vertreter dieser Art von Frameworks sind jQuery Mobile und Sencha Touch, über die es an dieser Stelle demnächst mehr zu lesen geben wird.