App-Typen
Typen von Apps für mobile Betriebssysteme
Inhaltsverzeichnis
Native Apps
Apps, die mit den Werkzeugen des Betriebssystem-Herstellers entwickelt wurden.
Beispiele für diese Werkzeuge:
- Android Studio
 - Xcode von Apple
 
Bei diesen Apps wird das Programm in Maschinensprache für iOS oder in Java Byte Code für Android mit einem Compiler übersetzt.
Vorteile
- Nutzung aller Möglichkeiten, die Gerät und Betriebssystem bieten
 - Schnellstmögliche Ausführung der Programme
 
Nachteile
- Unterschiedliche Programmiersprachen
 
- Java für Android - Objective-C und Swift für iOS - C# für Windows Mobile
- Kein cross-platform-Entwicklung: Ein Programm muss für jedes Betriebssystem neu entwickelt werden.
 - Hoher Lernaufwand: Die Entwickler müssen Programmiersprache und API für jeder Plattform neu erlernen.
 
Web Apps
Eine HTML-Seite mit eingebettetem JavaScript-Code
Beispiele: E-Mail-Clients für Web (GMX, web.de, Google Mail, yahoo), Office365, Google Docs, Apple iCloud usw.
Vorteile
- Läuft auf allen Betriebssystemen auf denen ein (moderner) Browser läuft.
 - Einmal programmiert läuft die App (hoffentlich) überall.
 - Geringerer Lernaufwand: 1 Programmiersprache (=JavaScript), 1 API und Umgebung: Browser
 
Nachteile
- Langsamer, da sie erst von JavaScript in Maschinensprache übersetzt werden müssen.
 - Wir können nicht alle Funktionen des Betriebssystems nutzen, da diese aus Sicherheitsgründen für Web Apps nicht zugänglich sind.
 
Hybride Apps
Eine Web-App, die in einem Container läuft und auf einem Handy installiert wird wie eine normale App.
Der Benutzer merkt gar nicht, dass es sich um eine Web-App handelt, weil sie (in der Regel) genauso aussieht wie eine native App.
Tatsächlich läuft diese App in einem Browser-Fenster, das keinen Rand hat und genauso groß ist wie der Bildschirm.
Vorteile
- Zugriff auf (nahezu) aller Funktionen der Geräte
 - Programm lässt sich auf allen (unterstützten) Betriebssystemen ausführen
 
Nachteile
- Langsamer als Native Apps
 - Anpassung an Betriebssystem-Design aufwendig.
 
