Was sind native Apps und wie unterscheiden sie sich von Cross-Platform-Technologien?
Bei nativen Apps handelt es sich um mobile Anwendungen, die explizit für ein Betriebssystem, also im Bereich mobiler Apps iOS- oder Android, entwickelt worden sind. Hierbei wird der Code spezifisch auf das dieses abgestimmt und fügt sich perfekt in das System aus verschiedener Software ein. Kompatibilität mit beispielsweise der Kamera und dem GPS, oder der Zugriff auf Daten sind hierbei besonders relevant, da viele Anwendungen direkt mit diesen Komponenten interagieren und einen reibungslosen Zugriff benötigen.
Konträr dazu werden Cross-Platform-Apps nicht explizit für ein Betriebssystem entwickelt, sondern bestehen aus einer einheitlichen Sprache, die auf beiden Plattformen funktioniert. Große Teile des Codes funktionieren somit auf beiden Betriebssystemen. Cross-Plattform-Technologien stellen die Brücke zwischen einer einheitlichen Code Basis und des jeweilige nativen Betriebssystems dar. Dadurch kann in den meisten Fällen reibungslos auf alle nativen Features zugegriffen werden.
Fachkräftemangel und hohe Entwicklungskosten: Diese Nachteile bergen native Apps
In der App-Entwicklung ist es essentiell, mit Entwickler:innen zusammenzuarbeiten, die die nötige Expertise und Erfahrung aufweisen um das Projekt rund um die native Anwendung zu einem Erfolg werden zu lassen. Insbesondere im Bereich der iOS-Entwicklung sind Kapazitätsengpässe im Bereich des Fachpersonals an der Tagesordnung. Laut der jährlichen “Developer Survey” von Stackoverflow verfügten im Jahr 2020 nur rund 5,9% der Entwickler:innen über Kenntnisse der Programmiersprache Swift. Diese ist jedoch die derzeit empfohlene Standardsprache in der Entwicklung von iOS-Anwendungen. Aufgrund des geringen Angebots und der extrem hohen Nachfrage wird die Suche nach iOS-Developern zu einem Wettbewerb, aus dem nicht jedes Unternehmen zeitnah Erfolge ziehen kann. Somit kann der Aufbau eines geeigneten Teams zur Erstellung einer nativen Anwendung Monate in Anspruch nehmen und neben dem Zeitaufwand auch enorme Kosten verursachen. Laut einer Statistik von Stripe aus dem Jahr 2018 sind Engpässe im Bereich der Fachkräfte eine größere Bedrohung für Unternehmen als beispielsweise mangelndes Kapital. Dies kann im schlimmsten Falle dazu führen, dass Firmen zeitweise keine geeigneten Mitarbeiter haben, um die native App zu warten, Bug Fixes durchzuführen oder Updates zu entwickeln.
Cross-Platform-Lösungen werden in Sprachen entwickelt, die ein deutlich größerer Kreis an Entwickler:innen beherrscht. So basieren beispielsweise React Native und Ionic auf JavaScript, einer der bekanntesten Programmiersprachen weltweit. Laut Stackoverflow beherrschten 2020 rund 67,7% der Developer diese - somit sind Talente im Bereich der plattformübergreifenden Entwicklung deutlich leichter zu rekrutieren. Das Risiko eines Personalengpasses wird dadurch erheblich reduziert, ebenso wie der Kosten- und Zeitaufwand für die Suche nach geeigneten Mitarbeitern.
Da die Anwendungen in vielen Fällen auf iOS und auf Android verfügbar sein müssen, ergibt sich zudem ein weiterer Zeit- und Kostenfaktor, da zwei vollständig separate Codebasen für beide Betriebssysteme erstellt und im weiteren Verlauf gepflegt werden müssen. Somit entsteht ein doppelter Arbeitsaufwand, welcher sich durch Entwicklung mit Cross- Platform-Programmen reduzieren lässt.
Warum entscheiden sich Firmen dennoch für native Entwicklung?
Trotz der hohen Kosten und des Personalmangels entscheiden sich nach wie vor viele Unternehmen dafür ihre Anwendungen nativ zu entwickeln. Dies liegt insbesondere an dem zuvor bereits erwähnten, reibungslosen, Zusammenspiel mit der Geräten-internen Soft- und Hardware und der somit makellosen User Experience. Insbesondere bei komplexen Anwendung, die einen uneingeschränkten schnellen Zugriff auf Sensoren erfordern, ist native Entwicklung der einfachere Weg. Speziell bei Hardware-naher Entwicklung empfiehlt sich ebenfalls der native Ansatz.
Cross-Platform-Apps – Schnelle Entwicklung mit kleinem Budget
Wie bereits festgestellt, lassen sich Cross-Platform-Anwendungen deutlich schneller mit einem kleineren Budget entwickeln. Somit eignen sie sich insbesondere dann, wenn verhältnismäßig simple Apps innerhalb kürzester Zeit fertiggestellt werden sollen, beispielsweise als Proof-of-Concept für den weiteren Verlauf des Projekts. So müssen nicht erst enorme Mengen an Ressourcen in die Entwicklung von zwei nativen Apps gesteckt werden, die unter Umständen gar nicht erst marktfähig sind.
Auch in der Wartung sind Cross-Platform-Apps tendenziell günstiger, insbesondere auch durch die niedrigeren Personalkosten aufgrund des höheren Angebots an Fachpersonal.
Insbesondere wenn es sich um eine simple Anwendung handelt, die sich eher an gelegentliche Nutzer:innen richtet, eignet sich Cross-Platform-Development optimal. Durch die Einfachheit der Workflows innerhalb der Anwendung, lassen sich hierbei während der Nutzung meist keinerlei Unterschiede zu nativen Apps feststellen.
Durch die kontinuierliche Weiterentwicklung der plattformübergreifenden Frameworks sind diese inzwischen für die meisten App-Projekte zu einer ernsthaften Alternative geworden.
Updates, Plugins, Wartung – Was Sie bei Cross- Platform-Projekten beachten müssen
Ebenso wie die native Entwicklung bergen auch Cross-Platform-Projekte einige Nachteile und Schwierigkeiten, deren man sich vor der Entscheidung bewusst werden sollte. Hierzu zählt insbesondere die Kompatibilität mit den Updates der jeweiligen Betriebssysteme. Anbieter von Cross-Platform-Frameworks müssen hier ebenso schnell nachziehen wie Entwickler:innen-Communities, welche Plugins für das jeweilige Framework anbieten. Kommt es hierbei zu Verzögerungen, entstehen schnell Kompatibilitätsprobleme. Zu den Communities gehören hier Developer:innen, die in ihrer Freizeit an den Plugins arbeiten, Firmen, die Open-Source-Bibliotheken unterstützen, oder auch der First-Party-Support von Plugins großer Unternehmen. Wichtig ist hierbei, dass die benötigten Plugins für beide Betriebssysteme verfügbar sind, um auf beiden Plattformen den angestrebten Funktionsumfang bieten zu können.
Natürlich lässt sich auf die Frage native App oder Cross-Platform-Projekt keine pauschale Antwort geben. Unsere Expert:innen freuen sich jedoch darauf, Ihren individuellen Anwendungsfall mit Ihnen zu besprechen, und beste Praktiken mit Ihnen auszutauschen. Let’s talk.