App Entwicklung: Native Apps vs. Hybride Apps bei IoT-Projekten (Interview Teil 1/2)

App Entwicklung ist in der heutigen digitalen Welt ein großes Thema. Auch bei IoT-Projekten sollte eine mobile App immer mit berücksichtigt werden.

Doch bei der App Entwicklung muss so einiges beachtet werden, zum Beispiel der Unterschied von nativen Apps und hybriden Apps. 

Doch was ist eigentlich der Unterschied? Und welche Vorteile und Nachteile sind bei der Entscheidung zu berücksichtigen? In Teil 1/2 unserer Interview-Serie mit unserem App Entwickler Christian Oberdörfer haben wir ihn dazu befragt.

Teil 2 zum Vorgehen, den Besonderheiten und Kosten bei der IoT App Entwicklung könnt ihr hier lesen.

Mann bei der App Entwicklung mit dem Smartphone auf dem Tisch und IoT-Hardware in der Hand

Was ist der Unterschied zwischen hybrider und nativer App Entwicklung?

Christian: Zunächst einmal ist wichtig zu wissen: Es gibt für Smartphones nur noch zwei relevante Betriebssysteme: Android und iOS von Apple. Bei der App Entwicklung muss man sich also zunächst Gedanken machen, für welches der beiden Betriebssysteme man entwickeln möchte. In den meisten Fällen entscheiden sich Unternehmen für beide Betriebssysteme – immerhin möchte man keine Nutzer ausschließen. Dabei ist es wichtig zu wissen, dass das Betriebssysteme Android einen Marktanteil von ca. 80 % hat, iOS dagegen einen von ca. 20%.

Marktanteil der mobilen Betriebssysteme weltweit.
Quelle: Statcounter
Marktanteil der mobilen Betriebssysteme weltweit.
Quelle: Statcounter

Man kann einerseits versuchen, hybrid zu entwickeln. Das bedeutet, dass man ein spezielles Framework verwendet, um die App direkt für beide Betriebssysteme zu entwickeln. Dabei wird die App nur mit einer einzigen Codebasis programmiert, sowohl für Android als auch für iOS.

Bei der nativen Entwicklung hingegen wird für jedes Betriebssystem einzeln entwickelt, für Android und iOS separat.



Was sind Vorteile und Nachteile von hybriden Apps und nativen Apps?

Christian: Der Vorteil von hybriden Apps ist, dass nicht viel Fachwissen über das entsprechende Betriebssystem benötigt wird und die Entwicklung nur ein einziges Mal durchgeführt werden muss. Um dem Entwickler die Arbeit zu erleichtern, gibt es eine Vielzahl von Frameworks. Bekannte Frameworks sind beispielsweise Flutter, Ionic, Xamarin und React Native. Diese hybriden Frameworks verwenden meistens Programmiersprachen, die schon aus der Webentwicklung bekannt sind. 

Der große Vorteil bei der nativen App Entwicklung ist, dass man den Support vom Hersteller hat und eine viel größere Community, die Probleme für das entsprechende Betriebssystem schon einmal gelöst hat. Hier ist man also auf der sicheren Seite, dass die App vom Smartphone voll unterstützt wird.

Und was sind die Nachteile?

Christian: Bei der hybriden Entwicklung wird oft versprochen, dass sie sehr einfach und mit wenigen Vorkenntnissen angewendet werden kann. Ganz nach dem Motto “Einfach herunterladen und loslegen”. Leider entspricht das nur selten der Realität.

Das erste Problem ist, dass es zahlreiche Frameworks gibt, die die Community aufteilen. Das heißt, es gibt Entwickler, die sich nur mit einem Framework befassen und andere, die sich mit einem anderen auskennen. Dementsprechend muss man jemanden finden, der nur mit dem Framework arbeitet, welches auch im eigenen Unternehmen genutzt wird. Denn wenn ein Framework einmal festgelegt ist, kann es nicht einfach so geändert werden.

App Entwicklung Experte Christian Oberdörfer
IOX Experte für App Entwicklung Christian Oberdörfer

Das nächste Problem ist, dass die Frameworks nicht vom Hersteller des Betriebssystems kommen, sondern von Drittanbietern. Manchmal steht ein Unternehmen dahinter, manchmal handelt es sich aber auch um Open Source Software. So kann es passieren, dass diese Software plötzlich nicht mehr weiterentwickelt wird. Wenn man dann als Unternehmen auf ein solches Framework gesetzt hat, kann das im Extremfall bedeuten, dass die gesamte App neu entwickelt werden muss. Das heißt, man hat auch ein gewisses Risiko als Unternehmen.

Die Herausforderung und gleichzeitig Voraussetzung der nativen App Entwicklung ist, dass man sich besser mit dem jeweiligen Betriebssystem auskennen muss. Denn jedes System hat unterschiedliche Programmiersprachen und unterschiedliche Programmierkonzepte. Das bedeutet, dass man sich sich viel mehr mit den jeweiligen Eigenheiten befassen muss. An dieser Stelle kommt hinzu, dass Entwickler häufig nur mit Android oder mit iOS arbeiten, was die Teamzusammenstellung erschwert.

Zuletzt ist zu berücksichtigen, dass das Testing sowohl bei der hybriden als auch bei der nativen App Entwicklung berücksichtigt werden muss. Dies ist immer zeitaufwändig, weil die App an verschiedenen Geräten geprüft werden muss.

Native vs. hybride App: Für welche Variante sollte man sich bei IoT-Projekten entscheiden?

Christian: Man hat bei der hybriden App Entwicklung prinzipiell einen limitierten Funktionsumfang, alleine schon deswegen, weil die Frameworks von Drittanbietern immer den aktuellen Betriebssystemen hinterherhinken. Sobald es bei der App Entwicklung also an komplexere Anforderungen geht, kommt die hybride Entwicklung an ihre Grenzen.

Ein Beispiel dafür kann die Entwicklung von Apps für IoT-Anwendungen sein. Dabei muss dann nämlich die Hardware der IoT-Lösung mitberücksichtigt werden. Wenn wir mit der App z.B. Geräte per Bluetooth verbinden möchten, ist eine hybride Entwicklung schwierig, weil bei iOS ein komplett anderer Weg erforderlich ist als bei Android. 

Auch andere Technologien wie beispielsweise NFC und USB lassen sich mit hybriden Frameworks schlecht bis gar nicht umsetzen. Und wenn doch, dann ist dies mit sehr hohem Aufwand verbunden.

Fazit: App Entwicklung – hybride vs. native Apps?

Sowohl die hybride App Entwicklung als auch die native App Entwicklung haben Vor- und Nachteile. Während die hybride App Entwicklung wenig Fachwissen erfordert und günstiger ist, kommt sie bei komplexen Anwendungen an ihre Grenzen. Bei nativen Apps ist der Aufwand zunächst größer, jedoch ist man durch den Support vom Hersteller und der Community in Hinblick auf die Funktionalität der App auf der sicheren Seite.

Deshalb ist die Wahl, für welche Art App man sich entscheidet, stark von den Anforderungen abhängig. Da für IoT-Projekte aufgrund der Hardware-Komponente eher komplexere Funktionen notwendig sind, ist eine native Entwicklung häufig von Vorteil.

Mehr zum Thema:

In Teil 2 unseres Interviews mit Christian beantwortet unser App-Experte, wie man bei der Entwicklung einer App vorgeht und welche Besonderheiten und Herausforderungen bei IoT-Projekten und IoT-Produkten aufkommen: Interview Teil 2: IoT App Entwicklung – Vorgehen, Besonderheiten, Kosten


Du brauchst Unterstützung bei der App Entwicklung für dein IoT-Projekt? Wir helfen dir gerne bei der Umsetzung deiner App.

Click to rate this post!
[Total: 0 Average: 0]