Zoeken op Blue 2 Blond

Web app of native app

Voorheen kon de vraagstuk voor een native app of web app afhangen van de doeleinden, maar het verschil in mogelijkheden wordt met PWA steeds vager.

Bij aanbestedingen ontvang ik nog wel eens de vraag:

  • Moeten we een web app of native app laten ontwikkelen?
  • Wat is uberhaupt het verschil?

Web app/applicatie

Web app of web applicatie, kan via een webadres c.q. domeinnaam benaderd worden. Hiervoor is ongeacht de web app, enkel een webbrowser en internet nodig (PWA's uitgezonderd).

Een web omgeving heeft als voordeel dat er niets geïnstalleerd hoeft te worden en als gevolg ook geen directe opslagruimte kost. Wel zullen er zaken gecached worden, maar opslag vindt onder een andere mechanisme plaats.

Er is geen beperking aan het aantal te bezoeken websites of webapplicaties, terwijl er voor native apps kan gelden dat er niet meer voldoende ruimte is om een app te installeren op de smartphone of tablet.

Native app voor smartphone en tablet

Een native app dient geïnstalleerd te worden door een smartphone of tablet gebruiker. Voorheen was een smartphone app niet altijd compatibel met tablets. Bovendien kunnen deze apps niet altijd geïnstalleerd of gebruikt worden op laptop of desktop omgevingen.

Meerdere native app versies

Dat betekent dus dat er verschillende versies gebouwd moeten worden. Daar komt verschil in besturingssysteem bij, denk aan Windows, Apple of Android telefoons. Afhankelijk van de complexiteit van een app, dient de app in verschillende programmeer-talen gebouwd te worden om een breed doelgroep, waarbij gehanteerde type telefoon onbekend is, te bereiken.

Online omgeving

Aanvullend, in het geval van native apps die informatie uit moeten wisselen (veelal alle apps), zal er een centrale omgeving nodig zijn om data te allen tijde te synchroniseren. Hiervoor dient een online omgeving opgezet te worden, die te allen tijde (met de juiste toegang) te benaderen is. Bijvoorbeeld om voetbalstanden of nieuwsberichten op te halen, of juist in geval van boeking-apps, gegevens uit te wisselen.

Dit kan via een API, bijvoorbeeld een REST of SOAP API, afhankelijk van de mate van beveiliging die getroffen moet worden. Naast (een of meerdere) native apps zelf, zal ook een API gebouwd moeten worden om een app onder water mee te kunnen laten communiceren.

Voordeel native app

Het grootste voordeel van een native app, is dat er geen internet benodigd is om het te gebruiken. Uiteraard hangt dit af van hoe een app geprogrammeerd is. Een app voor nieuws, kan bijvoorbeeld gewoonweg eerder ingeladen nieuwsberichten tonen indien er wegens gebrek aan internet, geen nieuwe berichten opgehaald kunnen worden.

Of deze vlieger in praktijk op gaat, hangt af of een IT bureau er voor heeft gekozen van alle of van de eerste handvol berichten ook de gehele tekst in te laden. Hetzelfde geldt voor voetbaluitslagen, of bijvoorbeeld het weer. Bij gebrek aan internet, kan eventueel eerder ingeladen data worden getoond, alhoewel in geval van het weer, de informatie in het ergste geval enkele dagen achter kan lopen.

Overigens, met de komst van PWA, kan ook een web omgeving nog steeds functioneren bij gebrek aan internet.

Web app of native app

Bovenstaand doet direct uit de doeken wat de nadelen zijn van een native app. Afhankelijk van de toepassing, kan de doorlooptijd als ook ontwikkel-kosten van native apps beduidend hoger liggen. Dit zal van toepassing zijn voor informatie-systemen en wellicht in mindere mate voor spelletjes.

Start up

Is er als start-up noodzaak voor een informatiesysteem, bijvoorbeeld omdat dit het verdienmodel wordt of omdat dit het verdienmodel ondersteunt? Dan is het raadzaam een web applicatie te laten bouwen. In latere fases kan eventueel overwogen worden verdere financiën aan te wenden voor de bouw van native apps. Omdat er reeds een web omgeving gebouwd is, zou onderzoek gedaan kunnen worden naar de aanvullende toegevoegde waarde van een native app, als ook de wens voor native apps vanuit de doelgroep.

Minder downloads

Verschillende artikelen claimen dat er steeds minder native apps worden geïnstalleerd door gebruikers van een smartphone. Stel jezelf eens de vraag, wanneer is je laatste, of desnoods laatste twee apps geïnstalleerd? Volgens Comscore Mobile App Report download meer dan 50% van Amerikaanse smartphone gebruikers 0 apps per maand. Eén van de redenen, is opslag. Niet iedereen heeft de nieuwste telefoon, of telefoon met voldoende opslag ruimte voor nieuwe installaties.

Onder meer Google gebruikt de statistiek van 0 downloads dan ook graag, wanneer ze een seminar geven omtrent Progressie Web App (PWA).

PWA

Progressive Web App toepassing die een web oplossing eenzelfde look & feel kan geven als native apps. Alhoewel deze vlieger ook op gaat voor websites welke geen PWA ondersteuning kennen, kan voor een PWA's -net als voor native apps- een snelkoppeling worden toegevoegd aan de bureaublad.

Een PWA dient snel op te starten, werkt voor zowel smartphones, tablets als desktops en hoeft enkel in één (web)omgeving geprogrammeerd te worden. Ook kan een PWA dusdanig geconfigureerd worden, dat het ook bruikbaar is wanneer er geen internet is, en eventuele data ophaalt of uitwisselt zodra er weer verbinding met het internet is.

Een andere overeenkomst met native apps, is dat een PWA push notificaties uit kan sturen. Bijvoorbeeld in het geval van interessante nieuwsberichten of breaking news. Of bij verandering van voetbal tussenstanden.

Overigens kan er in het geval van PWA's in praktijk verschillen ontstaan in ondersteuning, alhoewel ontwikkelaars van platformen en browsers er bij gebaat zijn de ondersteuning ook uit te rollen.

PWA: zelf aan de slag

Voor een meer diepgaand artikel over web apps en native apps, zie Frankwatching.