Plattformen für die Entwicklung mobiler Apps

Plattformen für die Entwicklung mobiler Apps

Die Einführung des iPhones im Jahr 2007 war die Geburtsstunde des Smartphones und hat im gleichen Zuge mobile Anwendungen bzw. Apps zu einem bedeutenden Markt innerhalb der IT-Branche gemacht. Der jährliche Absatz von Smartphones soll bis 2019 die 2-Milliarden-Marke erreichen, die Umsätze mit und durch mobile Apps zeigen einen ungebrochenen Wachstumstrend. Analog verhält es sich auch mit den Investitionen in die Entwicklung der mobilen Helfer und Dienste. Bereits 2015 gab es weltweit 2,5 Milliarden aktive Smartphones und über 3 Millionen mobile Apps.

Natürlich haben sich zahlreiche Mitbewerber auf diesen Trend gestürzt und machen Apple den Platz an der Sonne streitig. Seit einigen Jahren ist Googles Android als alternatives mobiles Betriebssystem an Apple vorbeigezogen, was den Smartphone-Absatz und die Anzahl der mobilen Anwendungen betrifft. Gemeinsam decken Apple und Android Smartphones mehr als 90% des mobilen Marktes ab. Damit wird klar, dass andere Mitstreiter wie Microsoft nur eine Nichenposition besetzen.

Und damit wird auch klar, dass mobile Apps heutzutage in erster Linie für das iPhone und für Android-basierte Smartphones entwickelt werden müssen.

Java

Java ist die Grundlage für die Entwicklung von Android-Apps. Wer also mobile Anwendungen für diese Plattform nativ entwickeln möchte, muss zunächst Java selbst gut beherrschen und sich dann in das Android SDK (Software Development Kit) einarbeiten. Insofern kann man Android-Programmierung als Erweiterung normaler Java-Entwicklung betrachten, ohne die es definitiv nicht geht. Und da es weltweit geschätzt über 9 Millionen Java Entwickler gibt, hat sich Google eine solide Ausgangsbasis für weiteren schnellen Zuwachs an Android-basierten Apps gesichert.

Swift

Etwas anders verhält es sich mit mobilen Apps, die für Apples Betriebssysteme iOS entwickelt werden. Hier setzt Apple die proprietäre Sprache Objective C voraus, die ausschließlich für diese Plattform genutzt werden kann. Da Objective C relativ komplex und inzwischen auch etwas in die Jahre gekommen ist, hat Apple 2014 eine neue Programmiersprache namens Swift eingeführt. Diese soll einfacher zu lernen sein und kann auch mit Objective C gemischt werden. Der Swift-Trend ist also gerade in der Aufbruchphase und wird über Zeit Objective C ablösen.

Cross-Plattform Umgebungen

Da es für einen Entwickler recht schwierig ist, ein versierter Java/Android Entwickler und gleichzeitig ein Swift-Profi zu sein, wurden diverse Plattformen entwickelt, mit deren Hilfe man eine mobile App gleichzeitig für iOS und Android (bzw. auch andere Betriebssysteme) entwickeln kann. Einige bekannte Vertreter sind Xamarin, PhoneGap, Codename One oder Appcelerator, die mit teils unterschiedlichen technologischen Ansätzen eine mehr oder weniger automatisierte Übersetzung in die nativen Sprachen der jeweiligen Betriebssysteme versuchen. Für einfachere Apps können solche Plattformen durchaus gut geeignet und effizient sein, bei komplexen Anwendungen kommen sie jedoch an ihre Grenzen. Besonders schwierig ist die Steuerung von Hardware-Komponenten wie der Smartphone-Kamera über solche Cross-Plattform Tools. Und fast immer kann man davon ausgehen, dass Apps auf Basis von Cross-Plattform Entwicklungen größer und langsamer ausfallen als die entsprechende native Entwicklung.

Web-Anwendungen

Eine andere interessante Möglichkeit, Anwendungen auf Smartphones zur Verfügung zu stellen, besteht darin, eine klassische Web-Anwendung z.B. mit PHP oder einer anderen gängigen Programmiersprache zu entwickeln und diese dann über eine mobile App auf Android, iOS & Co. im Browser des Smartphones aufzurufen. Die mobile App selbst enthält dann keine sonstige Funktion außer dem Aufruf der eigentlichen Anwendung, sie erlaubt es Anwendern aber, den Aufruf-Link aus dem Google oder Apple Store herunterzuladen. Das funktioniert bei Google / Android i.d.R. problemlos, während Apple etwas strengere Sicherheitskriterien vorgibt.

Schreibe einen Kommentar

*

Be sure to include your first and last name.

If you don't have one, no problem! Just leave this blank.