Native vs cross-platform apps

Kun je beter een native of een cross-platform app laten maken? Afhankelijk van jouw ondernemingsstructuur en het doel van de app zul je een afweging moeten maken om een app per platform te laten ontwikkelen, of een app met dezelfde codebase voor beide platformen.

Kun je beter een native of een cross-platform app laten maken? Afhankelijk van jouw ondernemingsstructuur en het doel van de app zul je een afweging moeten maken om een app per platform te laten ontwikkelen, of een app met dezelfde codebase voor beide platformen.

Wat is een native app?

Een native app is een app die specifiek gemaakt is voor een bepaald platform. Om beide platformen te ondersteunen moeten er dus 2 aparte apps ontwikkeld en onderhouden worden. Functionaliteit en UI/UX zullen in grote mate hetzelfde zijn maar moeten per platform op maat gemaakt worden. 

Wat is een cross-platform app?

Een cross-platform app is een app die gemaakt is om te werken op meerdere platformen. De gedachte hierachter is "één keer ontwikkelen, overal inzetten", wat betekent dat er zoveel mogelijk code gedeeld wordt tussen beide platformen. Cross-platform apps kunnen opgedeeld worden in 2 categorieën:

Webapps: deze vorm van apps wordt geladen in de mobiele browser van de gebruiker en hebben beperkte toegang tot de functionaliteit van de telefoon. De UI is overal hetzelfde, wat vaak resulteert in slechte performance en schokkerige animaties. Dit soort apps wordt vaak gebruikt om een prototype snel te testen. Een webapp heeft echter wel als voordeel dat deze ook op een PC/laptop geopend kan worden en geïndexeerd kan worden in Google's zoekresultaten. 

Hybride cross-platform apps worden voor het grootste gedeelte in dezelfde native taal geschreven, waardoor er meer gebruik gemaakt kan worden van de functionaliteiten van de smartphone van de gebruiker. De UI voelt hetzelfde als een echte native app, ook al ben je beperkt in de opties die je hebt voor maatwerk. 

Waarom zou ik twee apps laten ontwikkelen als ik ook één app voor 2 platforms kan ontwikkelen?

Twee native apps ontwikkelen is geen dubbele moeite

In tegenstelling tot wat vaak gedacht wordt, is het laten maken van twee native apps geen dubbele moeite. Je kunt de app voor één platform optimaliseren, zodat de logica en UI/UX bekend is en alle valkuilen zijn getackeld. De app voor een extra platform ontwikkelen is nu nog slechts een kwestie van programmeren, wat uiteraard veel sneller gaat als het eindresultaat al bekend is.

Tekort aan open-source libraries

Voor native app ontwikkeling zijn veel voorgeprogrammeerde componenten beschikbaar waardoor de ontwikkeltijd in sommige gevallen behoorlijk gereduceerd kan worden. Omdat de markt voor cross-platform apps een stuk kleiner is, zal de ontwikkelaar misschien zelf aan de gang moeten om bepaalde componenten te ontwikkelen en functioneel te maken.

Je lot ligt in de handen van derde partijen

Updates vanuit het platform kunnen ervoor zorgen dat een app (een gedeelte van) zijn functionaliteiten verliest. Vooral bij cross-platform is het risico groot dat de app na een update weinig tot niets meer doet. Dit kan vaak pas door de app ontwikkelaar opgepakt worden op het moment dat de tool is aangepast door de ontwikkelaar van de tool. Echter geven de meeste grote partijen aan op dezelfde dag de tools mee te laten evalueren. Toch kunnen er zo eenvoudig kleine bugs insluipen. 

Vervelende kosten achteraf voorkomen

Natuurlijk kijk je naar de investeringsindicatie voor de app. Maar de investering is niet het belangrijkste onderdeel, wat je ervoor terug krijgt (ROI) is dat wel. Omdat cross-platform beperkt is in functionaliteiten zou je hierdoor minder gebruikers kunnen krijgen. Ook met het oog op de toekomst heb je beperkte mogelijkheden in de ontwikkeling als je kiest voor cross-platform ontwikkeling.

Het achteraf laten ombouwen van cross-platform naar native kan erg prijzig zijn, dus weet van tevoren zeker wat je wilt. 

Je wilt de concurrentie verslaan

En dat gaat bijna alleen nog maar door hoge kwaliteit te leveren. Consumenten zijn nu eenmaal gewend aan bepaalde standaarden en de kans dat gebruikers weglopen als de app hier niet aan voldoet is vrij groot. Hoe hoger de kwaliteit van de app, hoe groter de kans op meer (dagelijkse) gebruikers.

Test je prototypes op 1 platform

Cross-platform wordt vaak gebruikt voor de ontwikkeling van MVP's. Echter kun je beter een native app laten ontwikkelen voor één platform als een revolutionair prototype, dan een app die je daarna toch weggooit. Bovendien raak je zo geen functionaliteit kwijt én heb je gelijk een basis voor de app. 

Cross-platform apps worden beperkt ingezet

Als je bereid bent de beperkingen en risico's van cross-platform app ontwikkeling te accepteren kan dit zeker een goede uitkomst zijn. De meest voorkomende cases van cross-platform zijn interne bedrijfsapps, waar de user interface ondergeschikt is aan de functionaliteit van de app.