Hvad er en native app?

Af Weapp · Opdateret

En native app er bygget specifikt til iOS eller Android med platformens egne sprog og værktøjer. Det giver fuld ydeevne, adgang til alle enhedens funktioner og platformens præcise følelse. Prisen er at du skal have to separate kodebaser hvis appen skal findes på begge platforme. For de fleste forretningsapps har cross-platform i praksis udvisket forskellen.

Når man begynder at tale om app-udvikling, dukker begrebet “native app” hurtigt op, ofte stillet over for “hybrid” eller “cross-platform”. Her gennemgår vi hvad en native app faktisk er, hvad den giver dig, og hvad den koster, uden unødig jargon.

Definitionen

En native app er en app bygget specifikt til én platform, iOS eller Android, med den platforms egne programmeringssprog og værktøjer. En native iOS-app og en native Android-app er altså to forskellige ting, bygget hver for sig.

Ordet “native” understreger at appen taler platformens eget sprog direkte uden et mellemlag der oversætter. Det er det modsatte af en app der bygges én gang og derefter kører på flere platforme via et fælles framework.

Hvad det giver dig

Fordelene ved den native tilgang handler om kontrol og nærhed til platformen.

  • Fuld ydeevne. Appen kører så hurtigt som platformen tillader, uden mellemlag.
  • Alle enhedens funktioner. Kamera, sensorer, notifikationer og det nyeste platformen tilbyder, er direkte tilgængeligt.
  • Platformens præcise følelse. Brugerfladen følger standarden til punkt og prikke så appen føles “rigtig” for den der er vant til sin telefon.

For apps med særligt høje krav, som tung grafik, avanceret brug af hardware eller ekstrem ydeevne, er det afgørende. Her giver native udvikling mest kontrol over slutresultatet.

Prisen: to kodebaser

Fordelene har en tydelig pris. Fordi iOS og Android bruger forskellige sprog og værktøjer, skal du bygge appen to gange hvis den skal findes på begge platforme: én kodebase til iOS og én til Android.

Det betyder i praksis:

  • Mere udviklingsarbejde, ofte med to forskellige kompetencer.
  • To versioner der skal vedligeholdes parallelt når noget ændres.
  • Højere omkostninger både til at bygge og til drift og vedligeholdelse over tid.

Har du kun brug for én platform, er det ikke noget problem. Skal du nå både iOS og Android, bliver det derimod en betydelig forskel i pris og arbejde sammenlignet med at dele koden.

Native, hybrid og cross-platform kort fortalt

For at sætte native i sammenhæng er det værd at stille alternativerne op ved siden af hinanden.

TypeKort beskrivelse
NativeBygges separat pr. platform med platformens egne værktøjer; maksimal ydeevne, to kodebaser
Cross-platformBygges én gang og kører på begge; deler det meste af koden og sænker omkostningen
HybridBygger i vid udstrækning på webteknologi pakket som en app

Har du egentlig brug for native?

Her er det vigtigste at tage med: For de fleste forretningsapps har cross-platform i praksis udvisket grænsen. Frameworks som React Native lader dig bygge en app der kører på både iOS og Android, med en kvalitet og følelse som brugeren sjældent kan skelne fra en native app. Til en app med konti, lister, formularer, notifikationer og betaling slår det rigeligt til.

Native udvikling bliver først relevant når du har høje krav til ydeevne eller brug for dyb integration med enhedens hardware. Tag derfor udgangspunkt i hvad appen faktisk skal gøre, i stedet for at antage at native altid er bedst.

En konkret måde at afgøre det på

Spørg dig selv hvad appen skal gøre når den arbejder hårdest. En app der viser indhold, håndterer konti, modtager betalinger og sender notifikationer, stiller ingen ekstreme krav. Her slår cross-platform rigeligt til, og du sparer både tid og penge ved at bygge én gang i stedet for to.

En app der derimod renderer avanceret 3D-grafik, behandler video i realtid eller styrer specialiseret hardware, ligger tættere på native. Her kan den sidste bid ydeevne eller den dybe hardwarekobling være meromkostningen ved to kodebaser værd.

En almindelig misforståelse er at “rigtige” apps skal være native. Sådan er det ikke. Mange af de apps du bruger dagligt, er bygget med cross-platform, og du mærker det ikke. Kvaliteten ligger i hvor godt appen er bygget, ikke i etiketten på teknologien bag.

Kort opsummering

En native app er bygget til en bestemt platform med dens egne værktøjer. Den giver fuld ydeevne og præcis platformsfølelse, men koster to kodebaser for at dække både iOS og Android. For langt de fleste forretningsapps vælger man i dag cross-platform og opnår samme oplevede kvalitet til en lavere omkostning mens native gemmes til de tilfælde hvor ydeevne eller hardware virkelig kræver det.

Er du usikker på hvilken tilgang din idé kræver, hjælper vi hos Weapp gerne med at finde ud af det. Kontakt os med en kort beskrivelse, så giver vi dig en klar anbefaling.

Ofte stillede spørgsmål

Hvad betyder det at en app er native?

At den er bygget specielt til én platform, iOS eller Android, med platformens egne programmeringssprog og værktøjer. En native iOS-app og en native Android-app er altså to separate løsninger. Ordet native understreger netop at appen taler platformens eget sprog i stedet for at gå via et mellemlag.

Hvad er fordelen ved en native app?

Fuld ydeevne, adgang til alle enhedens funktioner og en følelse der præcis følger platformens standard. Til apps med høje krav til ydeevne eller behov for dyb integration med hardwaren giver native udvikling mest kontrol. Derfor bygges de mest krævende apps ofte native.

Hvad er ulempen ved native udvikling?

At du skal have to kodebaser hvis appen skal findes på både iOS og Android fordi platformene bruger forskellige sprog. Det betyder mere arbejde, ofte to forskellige kompetencer og højere omkostninger til at bygge og vedligeholde. Det er den vigtigste grund til at mange vælger cross-platform i stedet.

Hvad er forskellen på en native app og en cross-platform-app?

En native app bygges separat pr. platform mens en cross-platform-app bygges én gang og kører på begge. Cross-platform deler det meste af koden og bliver derfor ofte billigere for begge platforme. Native giver til gengæld maksimal ydeevne og den mest præcise platformsfølelse.

Har jeg brug for en native app?

For de fleste forretningsapps: nej. Cross-platform-frameworks som React Native har udvisket grænsen og slår rigeligt til. Native bliver først relevant ved høje krav til ydeevne eller dyb hardwareintegration. Tag udgangspunkt i hvad appen skal gøre, frem for at antage at native altid er bedst.