Technologie

Es gibt zurzeit mehrere Technologien, Anwendungen zu entwickeln, um sie ohne Umwege auf iPhone, Android und Co. zu betreiben.

Mobile Websites

Jedes Smartphone besitzt einen Browser, um mobile Websites anzuzeigen. Dabei handelt es sich meist um eine einfache Variante der normalen Website. Nur die Darstellung wurde für die Anzeige auf kleinen Bildschirmen optimiert.

Die Vorteile dieser Variante liegen im niedrigen Preis und der großen Verfügbarkeit von Webentwicklern. Die Nachteile überwiegen jedoch:

  • Gerade die spannenden neuen Funktionen der modernen Geräte, wie Lagesensoren oder Kamera, können nicht genutzt werden.
  • Mobile Websites sind schlecht zu finden. Im Gegensatz zu echten Apps, die über einen App-Store vertrieben werden, müssen sie erst über den Browser gefunden und dann per Lesezeichen festgehalten werden.
  • Abhängig von der zur Verfügung stehenden Verbindungsqualität und Bandbreite können mobile Websites, die eine permanente Internetverbindung erfordern, sehr langsam sein.

Hybrid-Apps

Mit Hybrid-Apps wird eine echte App für mehrere Plattformen erstellt. Technisch handelt es sich dabei um eine Art »Minibrowser«, der Webinhalte darstellt. Die App kann so mit Web-Technologien entwickelt und als echte App angeboten werden, mitsamt einem eigenen Logo auf dem Home-Screen des Geräts und der Abrechnung kostenpflichtiger Inhalte. Dank einiger technischen Tricks ist auch ein erweiterter Zugang zu Spezial-Funktionen des Gerätes möglich.

Weil es sich unter der Haube jedoch noch immer um Webseiten handelt, bleiben die Probleme mit der Geschwindigkeit. Hinzu kommt, dass Nutzer eine echte App erwarten, die auch so aussieht wie eine App. Der Aufwand ist erheblich, oft aber meist vergeblich. Das »Look & Feel« der jeweiligen Plattform mit Web-Technologie nachzuempfinden, ist zwar möglich, aber der Nutzer »riecht den Braten«.

Interpreter-Ansatz

Bei diesem Ansatz wird eine Basis-App als Interpreter für jede Zielplattform entwickelt und implementiert. Die Basis-App stellt eine einheitliche Schnittstelle für die Konzepte wie »Auswahlliste«, »Bildanzeige« oder »Textelement« zur Verfügung. Darauf aufbauend wird dann mithilfe einer Konfigurationssprache die eigentliche Logik der App entwickelt – losgelöst von den Eigenheiten des jeweiligen Systems und damit plattformunabhängig.

Das Ergebnis sind echte Apps, die so aussehen und sich auch so anfühlen wie vom Kunden gewünscht. Zwar sind die Ergebnisse zumindest theoretisch langsamer als speziell entwickelte Apps. In der Praxis ist bei einfachen Anwendungen kein Unterschied auszumachen.

Der größte Nachteil dieses Ansatzes liegt in der Abhängigkeit zur Basis-App. Es können nur die Fähigkeiten genutzt werden, die auch durch den Interpreter angeboten werden. Neuere Funktionen wie z.B. das hochauflösende Display des iPhone 4 stehen erst zur Verfügung, wenn der Interpreter angepasst worden ist.

Modellbasierte Entwicklung

Die generativen Ansätze der modellbasierten Entwicklung (MDSD) produzieren echte Apps für die jeweilige Plattform aus einer einzigen Quelle. Sie nutzen dazu ein Modell, das die App beschreibt, und erzeugen in einem Übersetzungsvorgang die gewünschten Programme in der jeweiligen Programmiersprache. Die so erstellten Programme sind nicht unterscheidbar von manuell geschriebenen Apps der jeweiligen Plattform und können im Bedarfsfall um Spezialfähigkeiten für das jeweilige Betriebssystems erweitert werden.

Fazit: Generative Ansätze sind das beste Mittel, wenn es darum geht, das Thema Apps strategisch anzugehen. Der Entwickler kann die verschiedenen Betriebssysteme und Geräte-Variationen berücksichtigen und schnell auf Entwicklungen reagieren. Um Änderungen durchzuführen, muss er nur ein Modell anpassen; der Rest geschieht auf Knopfdruck.

Vor- und Nachteile auf einen Blick

  Mobile Webseite Hybrid-App Interpreter MDSD klassisch nativ
Vorteile
Verfügbarkeit von Entwicklern ++ + 0 0
Nutzbarkeit spezifischer Gerätefunktionen + + ++ ++
Auffindbarkeit ++ ++ ++ ++
Usability + + ++

Nachteile
(Crossplattform-) Entwicklung ++ + 0 + −−
Initialer Aufwand ++ + −− 0

Wir haben Expertise in allen Arten der mobilen Entwicklung. Nehmen Sie Kontakt zu uns auf – wir unterstützen Sie gern in Ihren Projekten!


Kontakt

Jens Trompeter
Vorstand

Telefon: +49 231 9860-606

E-Mail: