04. Feb 2016

Alexander Troy

3 Min.

Wieso ionic? Eine Hybrid-App-Lovestory.

Wenn wir Hybrid-Apps entwickeln, ist das ionic-Framework das Tool unserer Wahl. Das Ziel des Frameworks ist sehr ambitioniert: das Look & Feel einer Native-App mit allen Vorteilen einer Hybrid-App zu vereinen.

Damit dieses Vorhaben funktioniert, baut ionic auf etablierten Frameworks wie Apache Cordova bzw. AngularJS auf, und erweitert diese um eine Vielzahl von einsatzbereiten UI-Komponenten.

Umgang mit ionic-Komponenten

Um die Handhabung mit den Komponenten zu erlernen, liefert ionic eine gute Dokumentation sowie einige Tutorials für den schnellen Einstieg. Leider sind diese zwischen den Versionen nicht immer auf dem neuesten Stand, jedoch kann die große Community bei den meisten Schwierigkeiten weiterhelfen.

Ein großer Vorteil der Komponenten, sind die bereits integrierten „Platform-Themes“. Damit verhalten sich die Elemente nicht nur betriebssystemkonform, sondern schauen auch so aus, und dies ohne den Code anpassen zu müssen.

Dank ionic Platform-Themes werden Elemente iOS und Android konform ohne Codeanpassung.

Tooling ist alles!

Auch beim Tooling setzt ionic auf etablierte und bei Web-Entwicklern bekannte Programme wie: gulp als Taskrunner, SASS zur Vereinfachung von CSS-Styles, bower für das Laden von Erweiterungen, Cordova zum Erstellen der App und Hinzufügen von Plugins. Zu guter letzt das ionic CLI selbst, welches alle Tools zusammenfasst und noch einige nützliche Funktionen bietet.

Beispielsweise ionic resources, welches automatisch die Splashscreens und Icons aus einem Quellbild generiert. Ebenfalls ein großer Vorteil für Entwickler ist das Hochladen der App via ionic upload bzw. ionic share. Was vor allem durch den Wegfall von App-Store-Genehmigungen, Tests deutlich erleichtert.

Write once, run anywhere!

Der Traum jedes Softwareentwicklers

Fazit & Ausblick

ionic ist relativ neu, genießt jedoch bereits großes Ansehen in der App-Entwickler-Szene. Es gibt zwar Alternativen wie Sencha Touch oder jQuery Mobile, jedoch bieten diese nicht die volle Integration in andere Systeme und man muss sehr viel „selbst“ erfinden.

Interessant ist die Entwicklung des Ökosystems rund um ionic, wie den ionic store, welcher den Erwerb von Komponenten ermöglicht, die nicht im Basis-Framework enthalten sind. Oder auch die ionic services (push, deploy, analytics, …), welche einige Schritte für Entwickler vereinfachen sollen – später gegen Entgelt versteht sich. ;-)

Generell geht die Tendenz immer mehr in Richtung Web- oder Hybrid-App. „Write once, run anywhere!“ – Ein Vorhaben, welches erst durch leistungsfähige neue Smartphones, und die Verbesserungen der Webtechnologien ermöglicht wird.

Oder einfach: Fusonic Web | Fusonic Hybrid-Apps!

Nutzt ihr bereits die Vorteile von Hybrid-Apps? Wenn ja, habt ihr schon Erfahrung mit ionic gemacht? Seit auch ihr von dem Tool überzeugt und wollt mehr wissen, beispielsweise über ionic 2 und die Möglichkeiten von TypeScript? Lasst uns gerne einen Kommentar da.