App-Entwicklung

Apps sind schon lange nicht mehr nur kleine „Helferlein“ für schnelle Aufgaben, sie steigern die Effizienz in allen Anwendungsbereichen und sind fester Bestandteil des heutigen Alltags. Inzwischen sind sie aus der Freizeit- und Business-Welt nicht mehr wegzudenken. Sie schaffen Interaktion mit dem Kunden auf jeglicher Hardwareplattform. Diese gelebte Flexibilität findet sich in allen Lebensbereichen wieder – ob beim Online-Shopping, -Banking, bei der Ernährung oder zur Unterstützung und Präsentation der eigenen Unternehmensdienstleistungen.

 

Apps werden von den meisten Nutzern vor allem mit mobilen Endgeräten assoziiert. Das ist auch der Bereich, auf welchen wir als Agentur für App-Entwicklung in dieser Leistungsbeschreibung genauer eingehen möchten. Sollten Sie nach der Applikations-Entwicklung im Desktop-Bereich suchen, dann sind Sie hier am richtigen Platz.

detaillierter Überblick zu den möglichen Umsetzungsmöglichkeiten

Native Apps

Auf die Native App-Entwicklung wird immer dann zurückgegriffen, wenn die Anforderungen an die App sehr komplex sind und dem Nutzer ein möglichst reibungsloses Nutzererlebnis geboten werden soll. Die Wahl einer nativen App-Entwicklung ist vor allem dann sinnvoll, wenn die App beispielsweise auf besondere Hardwarekomponenten des Endgerätes zurückgreifen soll.

 

Ein Knackpunkt bei nativen Apps ist, dass sie gezielt für ein bestimmtes Betriebssystem (z.B. iOS oder Android) entwickelt werden und demzufolge an dieses gebunden sind. Das hat insbesondere den Vorteil, dass native Apps die Hardwaremöglichkeiten des jeweiligen Endgerätes optimal ausnutzen können, da sie den Zugriff auf die unterliegenden Schichten des Betriebssystems direkt, über die vom Hersteller bereitgestellten Schnittstellen, erhalten. Diese bleiben Webanwendungen zum Großteil verwehrt.

Das eröffnet eine Reihe von Möglichkeiten: So kann beispielsweise für Authentifizierungen, anstatt der Eingabe eines Passworts, eine unkompliziertere Methode wie die Fingerabdrucks- oder Gesichtserkennung (z.B. TouchID oder FaceID) genutzt werden, welche vom Gerät bereitgestellt wird. Des weiteren können viele Ressourcen direkt mit der App mitgeliefert bzw. persönliche Informationen auf dem Endgerät zwischengespeichert werden. Das reduziert Ladezeiten und das Nutzungserlebnis einer nativen App fühlt sich häufig deutlich performanter und flüssiger an als bei Anwendungen anderer Umsetzungsmethoden.

 

Ein Nachteil dieses Vorgehens ist jedoch, dass native Apps für jede Plattform separat entwickelt werden müssen. In den häufigsten Fällen sind daher mindestens zwei Entwicklungen notwendig. Das erschwert auch die plattformübergreifende Wartung dieser Apps, da der Code individuell für das jeweilige Betriebssystem aktualisiert werden muss.

Dennoch überwiegen zumeist die Vorteile der Performance und Nutzerfreundlichkeit. Ein weiterer, nicht unwichtiger Vorteil ist, dass native Apps hinsichtlich der technischen Gegebenheiten garantiert von den Betriebssystem-Herstellern akzeptiert werden. Gerade Apple ist in dieser Hinsicht für sein restriktives Vorgehen bzgl. Apps bekannt, welche mit Drittanbieter-Frameworks umgesetzt wurden.

Vorteile
  • alle Anforderungen und Funktionen umsetzbar
  • tiefe Integration ins Betriebssystem
  • gute Performance
  • hohe Nutzerfreundlichkeit
  • Nutzung der gewohnten Bedienelemente des Betriebssystems
  • Möglichkeit zur Integration von Offline-Funktionen
  • App kann im jeweiligen App Store gelistet werden
Nachteile
  • Oft mehrere Entwicklungen nötig (z.B. für iOS & Android)
  • höherer Pflegeaufwand

Progressive Web Apps (PWA)

Progressive Web Apps sind, wie der Name sagt, im Web zu Hause. Die Laufzeitumgebung (RTE) ist demzufolge ein normaler Internet Browser. Sie können von jedem Gerät aufgerufen werden, das über einen Browser verfügt. Damit sind Progressive Web Apps die plattformunabhängigsten und universellsten Apps am Markt. Die Kosten für eine PWA sind folglich meist deutlich günstiger, da sie nur einmalig entwickelt werden müssen und mittels responsiver Webtechniken an alle Displaygrößen angepasst werden können.

 

Aus diesen Vorteilen ergeben sich allerdings auch eine Reihe von Nachteilen, die vor allem dem Nutzer zur Last gelegt werden. So sind die Funktionalitäten sehr stark auf die vorhandenen Webtechnologien beschränkt. Hinzu kommt, dass die Unterstützung der Webtechnologien je nach Betriebssystemhersteller oder Browser-Engine variiert, was den Funktionsumfang zusätzlich einschränkt. So lassen sich zwar mittlerweile auch Hardware-Features wie der Zugriff auf die Kamera umsetzen, tiefere Zugriffe auf das Betriebssystem bleiben PWA’s jedoch verborgen.

 

Worin liegen die Unterschiede zwischen einer einfachen Webanwendung und einer PWA? Eine PWA nutzt zur Datenkommunikation einen sogenannten Service Worker. Dieser sorgt für den Abruf und die Kommunikation von Daten. Unterstützt der genutzte Browser hierbei den HTML5 Application Cache, so ist auch die Offlinenutzung einer PWA möglich. Mittels eines Manifest-Files kann die App dem Browser mitteilen, welche Elemente für den lokalen Betrieb benötigt werden. Der Browser prüft vor dem Laden von Ressourcen, ob diese Elemente bereits abgespeichert sind. Sind sie bereits vorhanden, so können sie direkt dem Cache entnommen werden und müssen kein weiteres Mal geladen werden. Eine Aktualisierung des lokal gespeicherten Anwendungscodes aus dem Web erfolgt erst dann, wenn der Browser eine Änderung am Manifest im Web erkennt. Jedoch ist der lokal verfügbare Speicherplatz stark browserabhängig. Während einige unbegrenzten Speicherplatz zur Verfügung stellen, schränken andere Browser wiederum den Speicherplatz auf maximal 5 MB ein. Damit lassen sich PWA’s nicht auf allen Geräten gleich performant nutzen.

Anders als bei nativen Apps, welche eine Prüfung im jeweiligen App-Store überstehen müssen, ist es bei PWA’s jedoch nicht so einfach, die Sicherheit zu überprüfen. Aus diesem Grund ist bei dieser Art von Apps kein oder nur ein eingeschränkter Zugriff auf verschiedene Hardwarefunktionen, wie z.B. die Kamera oder GPS möglich.

Durch die Universalität und Ausführbarkeit auf jedem internetfähigen Gerät dieser Umsetzungsform ist das Nutzerinterface oft nur wenig an das jeweilige Betriebssystem angepasst.

Insgesamt führen diese Punkte dazu, dass das Nutzungserlebnis von PWA’s oft nicht als so flüssig und performant wahrgenommen wird, wie bei nativen Apps.

 

Da Progressive Web Apps nicht oder nur über Umwege im App-Store gelistet werden können, ist deren Einsatz vor allem für den unternehmensinternen Einsatz geeignet, da dort die Gewinnung der Nutzerbasis nicht über den Erfolg entscheidet.

Vorteile
  • läuft auf jeglichem internetfähigen Gerät
  • einfache Umsetzung durch Nutzung von Webtechnologien
  • einfacher, langfristiger Support
Nachteile
  • App nicht in den App Stores verfügbar
  • Nutzbarkeit bestimmter Features stark abhängig von der Browserunterstützung
  • Einschränkungen hinsichtlich Speicher- und Hardwarenutzung
  • Interface nicht an die Bediengewohnheiten der jeweiligen Plattform angepasst

Hybrid-Apps

Hybrid-Apps vereinen viele Vorteile von Nativen Apps und PWA’s für den Entwicklungsprozess. Für deren Umsetzung kommen App-Frameworks wie React Native, Flutter oder Xamarin zum Einsatz. Sie ermöglichen die gleichzeitige Entwicklung von Apps für unterschiedliche Plattformen unter Nutzung der gleichen gemeinsamen Codebasis. Hybrid-Apps besitzen dafür jeweils einen nativen Kern für jede zu unterstützende Plattform, die restliche Entwicklung erfolgt häufig mithilfe von Webtechnologien.

 

Dieses Konzept bringt eine Vielzahl von Vorteilen mit sich. So können die damit entwickelten Apps in den jeweiligen Stores gelistet werden. Zudem ergibt sich aus der gemeinsamen Entwicklung für mehrere Plattformen ein deutliches Zeit- und Kostenersparnis. Weiterhin geht die Umsetzung unter Nutzung von Web-Technologien zumeist einfacher und schneller von der Hand als die Entwicklung mit Programmiersprachen nativer Apps.

 

Was sich zunächst wie die optimale Lösung anhört, hat leider auch seine Tücken. So führt die hybride Entwicklung häufig dazu, dass alle Plattformen das gleiche Nutzerinterface nutzen. Die Folge davon ist, dass sich die Bedienung nicht am Design und den Bediengewohnheiten des jeweiligen Betriebssystems orientiert und sich solcherlei Apps dadurch für den Nutzer fremd anfühlen können. Durch den Einsatz von Webtechnologien fühlt sich diese Art von Apps zudem meist nicht so performant an, wie native Apps.

 

Der mit Abstand größte Nachteil ist jedoch: Sollten die Betriebssystemhersteller neue Hardware- oder Software-Features einführen, so ist man für deren Unterstützung ggf. von der Geschwindigkeit der Entwickler-Framework-Anbieter abhängig, bis diese die Möglichkeit zu deren Implementierung nachliefern.

Vorteile
  • Gleichzeitige Entwicklung für iOS und Android
  • Hohes Zeit- und Kostenersparnis
  • Apps können in den App-Stores gelistet werden
Nachteile
  • Performance ist nicht gleichwertig zu nativen Apps
  • Häufig schlechtere Benutzerfreundlichkeit als native Apps
  • Unter Umständen keine zeitnahe Unterstützung neuer Betriebssystemfunktionen möglich

Wie Sie nun sicher feststellen konnten, gibt es im Bereich der App-Entwicklung eine Menge abzuwägen, um die richtige Entscheidung für die Entwicklung zu treffen. Gern begleiten wir Sie in diesem Prozess und treffen gemeinsam die richtige Entscheidung anhand Ihrer individuellen Anforderungen an die App.

Wann brauche ich eine App und welche ist die richtige Umsetzungsform?

Sie sollten die Nutzer mobiler Endgeräte auf jeden Fall bei der Planung Ihrer Kommunikationskanäle und Kundenangebote berücksichtigen. Denn der mobile Nutzungsanteil liegt heute schon allein im Netz bei über 50%1. Immer mehr Nutzer wechseln von klassischen Computern zu Smartphones oder Tablets und nutzen diese als ihre Hauptgeräte.

 

Doch ob es deshalb auch gleich notwendig ist, eine native App zu programmieren oder stattdessen eine mobile Web-App ausreicht, hängt ganz von den Funktionalitäten ab, die Ihr Angebot bieten soll. Sollten Sie sich hierbei unsicher sein, dann sprechen Sie uns gerne an. Anhand Ihrer Anforderungen treffen wir gemeinsam die beste Entscheidung zur richtigen und vor allem zweckmäßigsten Umsetzungsform.

So gehen wir vor

1

Beratungsgespräch & Analyse

Gemeinsam besprechen wir die Anforderungen, die Zielgruppe und den Einsatzzweck Ihrer App und treffen auf Basis dieser Informationen die richtige Entscheidung zu deren Umsetzungsform.

2

Konzeption

Auf Basis der Anforderungsanalyse planen wir die Aufteilung der App-Ansichten und erstellen das oder die Designs für die jeweilige(n) Plattform(en). Zudem entwerfen wir die Funktionsarchitektur für die technische Umsetzung.

3

Umsetzung

Wir setzen Ihre App mit den Entwickler-Tools der jeweiligen Plattform(en) um. Dabei berücksichtigen wir die Richtlinien der Plattformbetreiber, um eine erfolgreiche Überprüfung zu garantieren.

4

Testing & Go-live

Damit Ihre App keine Probleme beim Zertifizierungsprozess hat, testen wir sie vor der Veröffentlichung auf Herz und Nieren. Sobald wir davon überzeugt sind, dass sie bereit ist, veröffentlichen wir Ihre App in den jeweiligen Stores.

5

Wartung und Weiterentwicklung

Die mobile Welt ist schnelllebig und neue Betriebssystem-Features werden in regelmäßigen Abständen hinzugefügt. Wir unterstützen Sie dabei, dass Ihre App auf dem neuesten Stand bleibt und neue Funktionen unterstützt. Somit sorgen wir dafür, dass Ihre App auch auf Dauer positive Nutzerbewertungen abräumt.