Wat is de beste techniek voor jouw app? De 4 populairste opties vergeleken
GastblogGastblog door David van der Loo, van AppSpecialisten
Wil jij een app laten maken? Een app ontwikkelaar zal daarvoor een bepaalde techniek gebruiken. Het is slim om van tevoren goed na te denken over welke techniek dat moet zijn. De populairste opties zijn: een mobiele website, een HTML5 app, een hybride app of een native app. Wij zetten de belangrijkste voor- en nadelen voor je op een rijtje, zodat je een weloverwogen keuze maakt.
1. Native app
Een native app bouwen betekent dat je de app bouwt zoals Google en Apple dat bedoeld hebben. Hij wordt dan ook specifiek gebouwd voor elk besturingssysteem, dus voor Android of iOS. Gebruikers installeren een native app op hun apparaat vanuit de app store. Deze apps spreken dezelfde taal als het besturingssysteem en werken hier daardoor optimaal mee samen. Ze kunnen goed overweg met de hardware van het apparaat, zoals de camera of de GPS-positiebepaling. Je kunt een native app ook zonder internetconnectie laten werken. Het nadeel van native apps is dat je meerdere apps moet bouwen als hij moet werken op meerdere besturingssystemen. Kostentechnisch is dat nadelig en ook het onderhoud moet dubbel gebeuren, met relatief dure ontwikkelaars.
- Voordelen: Een native app werkt soepel, maakt optimaal gebruik van de hardware en is ook beter beschikbaar zonder internet.
- Nadelen: De app moet voor elk platform los ontwikkeld en onderhouden worden: dat kost tijd en geld.
2. Mobiele webapplicatie
Een ander uiterste is om geen app te bouwen, maar je website te “verappen”. Moderne mobiele webapplicaties maken gebruik van een combinatie van HTML5, JavaScript en CSS. Dat zijn normale programmeertalen waarin ook normale websites worden gebouwd. In principe is een mobiele webapplicatie dus een taakgerichte mobiele website. Standaard gebruik je dit soort apps alleen in je browser. Daardoor hoeven ze niet goedgekeurd te worden voor app stores en zijn ze vindbaar in Google. Een op HTML5 gebaseerde app is vooral een goede keuze als je app op veel verschillende apparaten en schermgroottes moet werken. Doordat hij werkt via de browser past hij zich namelijk makkelijk aan.
Als je jouw mobiele webapplicatie eenmaal werkzaam hebt via HTML5, dan is een Progressive Web App (PWA) de volgende stap. Hiermee zorg je ervoor dat je mobiele webapplicatie installeerbaar is op een mobiele telefoon, waardoor hij nog meer native kenmerken krijgt. Hij wordt sneller en je stuurt eenvoudig pushberichten.
Een vaak vergeten nadeel van een PWA is dat je bezoekers van je PWA-website moet uitleggen dat ze jouw website moeten installeren. Vanuit het oogpunt van een ontwikkelaar die de app bouwt is dat geen uitdaging. Maar vanuit het perspectief van je gebruiker is het lastig om te begrijpen dat een website geïnstalleerd moet worden. Verwacht daarom geen wonderen als het aankomt op het percentage website-bezoekers dat je PWA zal installeren na een websitebezoek.
Wil je juist een app die perfect integreert met de hardware van het apparaat (zoals de camera of GPS-functie)? Kies dan voor een native app. Of kies voor een tussenweg: de hybride app.
- Voordelen: Mobiele webapplicaties werken op veel verschillende apparaten en schermgroottes. Ze hoeven niet goedgekeurd te worden voor app stores en gebruikers vinden deze apps eenvoudig via Google. Daarnaast is een upgrade naar een PWA vrij eenvoudig.
- Nadelen: De gebruikerservaring is vaak minder soepel en webapplicaties werken minder goed samen met de hardware van het apparaat. Ook is een PWA vanuit marketingperspectief geen wondermiddel.
3. Hybride app
Het is mogelijk om een laag (‘wrapper’) toe te voegen aan je HTML5 app, waardoor je hem wel kunt toevoegen aan app stores. Bekende ‘wrappers’ zijn Cordova en PhoneGap. We noemen het eindproduct een hybride app. De ‘wrapper’ zorgt voor een vertaalslag tussen de HTML5 technologie en de native taal van de smartphone. Daardoor hoef je de app maar één keer te ontwikkelen voor elk mobiele besturingssysteem. Dat scheelt in kosten en je app is sneller klaar. Bovendien zijn ontwikkelaars die bekend zijn met HTML5-technieken beter beschikbaar dan ontwikkelaars die native talen ondersteunen. Er zijn wel wat nadelen. Zo geven de app stores van Android en IOS vaak de voorkeur aan native apps, wat een rol kan spelen in het beoordelingsproces van apps. Daarnaast werkt een hybride app vaak net wat minder soepel samen met het besturingssysteem en de hardware van het apparaat. Dat leidt soms tot apps die langzamer zijn in gebruik, met name op oudere en goedkoper smartphones
- Voordelen: Je bespaart tijd en geld door een cross-platform aanpak.
- Nadelen: De prestaties van de app nemen af, doordat hij niet perfect aansluit op het besturingssysteem en de hardware van het apparaat.
4. Ontwikkelplatformen
Bij veel organisaties ontstaat er een dilemma in de afweging tussen native apps en hybride apps. Een aantal grote techbedrijven uit Silicon Valley zijn daar handig op ingesprongen. Ze maken ontwikkelplatformen waarmee apps worden gemaakt die én in de app stores staan én de hoge kosten van native ontwikkeling omzeilen én voor een snelle, goede gebruikerservaring zorgen. De belangrijkste deelnemers en hun ontwikkelplatformen zijn: Facebook met React Native, Microsoft met Xamarin en Google met Flutter.
Voor nieuwe ontwikkelmethodes geldt altijd dat ze een bepaalde volwassenheid moeten hebben om echt bruikbaar te zijn. Je wilt namelijk niet dat programmeurs bij elke functie van je app het wiel opnieuw uitvinden, maar dat ze kosten besparen door te bouwen op wat anderen al hebben gemaakt. De afgelopen jaren is de volwassenheid van deze platformen aanzienlijk gegroeid door het ontstaan van communities die ervaringen en code met elkaar delen. Daardoor is de volwassenheid nu hoog en wordt het bouwen van apps op deze platformen steeds betaalbaarder en dus populairder. Dat zie je ook in de statistieken van cross-platform mobiele frameworks wereldwijd in 2019 en 2020 door Statista.com.
Het is opvallend hoe de ontwikkelplatformen sterk groeien en de hybride app-‘wrappers’ in populariteit afnemen. Het is wel goed om te weten dat hybride apps worden gebouwd in HTML5, terwijl de hierboven genoemde ontwikkelplatformen gebruik maken van meer native programmeertalen. Dat zorgt voor een kostenverschil: het vinden van developers met ervaring met native ontwikkeltalen is lastiger dan het vinden van ontwikkelaars met HTML5-ervaring.
Ook ontwikkel je met het gebruik van deze ontwikkelplatformen een afhankelijkheid ten opzichte van de sponsors die erachter zitten (Facebook, Google en Microsoft). Tegelijkertijd zit er nu achter ieder van deze platformen een community van onafhankelijke ontwikkelaars die deze platformen grotendeels zelfstandig in stand houden. Daarnaast veranderen app-ontwikkelingstechnieken sowieso snel en ben je bij iedere manier van ontwikkelen afhankelijk hiervan.
- Voordelen: Goedkoper dan native, sneller dan hybride. Inmiddels zit er een volwassen community achter die de ontwikkeling ondersteunt.
- Nadelen: Native is nog steeds sneller voor specifieke gevallen. Er zijn meer ontwikkelaars beschikbaar voor de ontwikkeling van hybride apps.
Vind de juiste app ontwikkelaar
Weet je welke technologie de beste keuze is voor jouw app? Zoek dan een app ontwikkelaar die helemaal in die techniek thuis is. Een app ontwikkelaar heeft vaak een eigen specialisme en is soms niet in elke techniek even goed.
Reacties