Sebastian Springer MaibornWolff

Ionic ist gerade für Entwickler, die bereits über Erfahrung mit Angular verfügen, eine sehr gute Möglichkeit, mobile Apps zu entwickeln.

Mittlerweile werden Webapplikationen nicht nur auf Desktoprechnern, sondern auch auf mobilen Endgeräten verwendet. Schon zu Entwicklungsbeginn sollte man sich darum die Frage stellen, welche Geräte wie unterstützt werden und welche Lösungsansätze dafür zum Einsatz kommen sollen.

Die meisten Webapplikationen werden nicht nur auf einem hochauflösenden Desktoprechner verwendet, an dem der Benutzer über Maus und Tastatur als Eingabegerät verfügt, sondern auch auf mobilen Endgeräten, bei denen der Benutzer die Eingaben über den Touchscreen des Geräts vornimmt. Bei den verschiedenen Endgeräten unterscheiden sich nicht nur die Eingabegeräte, sondern auch insgesamt die Art der Verwendung, die Anzeigemöglichkeiten und die Workflows, an die die Benutzer gewöhnt sind. Schon zu Beginn der Entwicklung einer Applikation sollten Sie sich aus diesem Grund die Frage stellen: Welche Geräte sollen wie unterstützt werden? Gerade für mobile Endgeräte existiert eine Vielzahl von Lösungsansätzen, die von traditionellen Webseiten über hybride Apps bis hin zu nativen Apps reichen.

Traditionelle Webseiten nutzen zur Anzeige auf mobilen Geräten meist die so genannten CSS Media Queries, mit denen sich CSS-Regeln anhand der Eigenschaften des Geräts anwenden lassen. Für die Eingabe kommen spezielle Pointer-Events zum Einsatz. Die Webseite wird einfach im Browser geladen. In Form von Progressive Web Apps rücken die mobilen Webseiten immer näher an native Applikationen heran. Mit Service Workern lassen sich beispielsweise Offlinefähigkeit und Push Notifications umsetzen. Außerdem können Webseiten mittlerweile auch auf dem Home-Screen des Telefons installiert werden und es kann so ein Shortcut zur Applikation erstellt werden. Die Nachteile von mobilen Webseiten und Progressive Web Apps sind sowohl die Performance als auch ein mangelnder Zugriff auf die Schnittstellen des Geräts.

Dieser Nachteil besteht natürlich nicht, wenn Sie sich entschließen, Ihre Applikation nativ umzusetzen. Native Apps sind, wenn Sie richtig implementiert sind, sehr performant und können auf die Geräteschnittstellen zugreifen. Außerdem bettet sich das Look and Feel der App durch die Verwendung nativer Kontrollelemente nahtlos in das System ein. Der Nachteil dieser Art der Umsetzung ist, dass Sie für Android in Java und für iOS in Swift entwickeln müssen.

Das Beste beider Welten vereinigen die hybriden Apps in sich. Entwickler müssen keine neue Programmiersprache lernen, sondern können die aus der Webentwicklung gewohnten Sprachen und Technologien weiterverwenden und erhalten zusätzlich besseren Zugriff auf das System und die Möglichkeit, ihre App in den jeweiligen Store zu bringen. Wie in der Webentwicklung üblich, gibt es auch hier nicht den einen richtigen Weg, sondern verschiedene Ansätze, um die Probleme zu lösen. Ein recht populärer Vertreter der Hybridframeworks ist neben NativeScript und React Native das Ionic-Framework, mit dem sich dieser Artikel näher beschäftigt.

Den vollständigen Artikel lesen Sie in der Ausgabe:

PHP Magazin 4.17 - "Ionic"

Alle Infos zum Heft
579797556Hybride Apps mit Ionic: Web & mobile App in einem!
X
- Gib Deinen Standort ein -
- or -