Native eller hybrid app

Vi anbefaler native app udvikling – og vi fortæller gerne hvorfor!


Hvilke app-løsninger findes der?

Når du skal have udviklet en mobilapp, findes der tre løsninger, du kan vælge imellem: Native app, hybrid app og web-løsning. Bliv klogere på de forskellige app-løsninger her. Se også vores visuelle overblik over forskellen mellem native app og hybrid app længere nede.

Hvad er en native app?

Native-løsninger er apps, der er udviklet til én bestemt type platform – f.eks. iOS eller Android. Skal app’en udkomme på iOS og Android skal der udvikles to kodebaser: Én kodebase til iOS (i programmeringssproget Swift) og én kodebase til Android (i programmeringssproget Kotlin). Der er altid fuld adgang til enhedernes hardware samt de nyeste funktioner i iOS/Android.

Hvad er en hybrid app?

Hybrid-løsninger er apps, der benytter en kombination af app og webteknologi. Fx. gennem frameworks og platforme som React Native, Xamarin, Flutter eller Cordova. Hybrid apps kaldes også cross-platform apps. I en hybrid app udvikles app’ens kildekode i ét sprog, som dernæst bliver “maskinoversat” til en iOS- og/eller Android app. Udviklingen af app’en sker gennem webteknologi uden hensyntagen til de enkelte platforme (iOS og Android).

Hvad er en web-løsning?

En web-løsning er den mest simple løsning, da det i princippet “bare” er et responsivt website, der er udviklet, så det fremstår mere brugervenligt, når det vises på en tablet og smartphone. En web-løsning fungerer på alle platforme, men er ikke en rigtig app, og vil derfor ikke være at finde i Apple App Store og Google Play Store. Datamæssigt er der også nogle lagringsmæssige begrænsninger.

 

native-vs-hybrid

Hvorfor anbefaler vi native app udvikling?

Det er ingen hemmelighed, at vi hos Makeable foretrækker native løsninger. Dette skyldes, at vi i bund og grund synes, at det er et bedre “stykke værktøj”. Det er simpelthen en bedre løsning både teknisk, forretningsmæssigt og for brugeren. Derudover er denne tilgang mere holdbar på den lange bane.

Nedenfor kan du blive meget klogere på forskellen på native apps og hybrid apps og læse mere om, hvorfor vi anbefaler native app udvikling.

Fordele ved native apps

Med native udvikling er performance i top, og udnyttelsen af enhedens hardware er optimal. Det giver altid det bedste resultat, og er det sikreste valg, da der er fuld adgang til enhedernes hardware. Samtidig er der altid adgang til de nyeste funktioner i enhedernes software/operativsystem (iOS/Android).

Hvis en app benytter hardware eller kommunikation med ekstern hardware som omdrejningspunkt, vil en native app give muligheden for at udnytte 100% af dennes potentiale. I modsætning hertil vil en hybrid app ikke uden uhensigtsmæssige tilpasninger kunne interagere med ekstern hardware.

Tadaa

Ulemper ved native apps

Den eneste ulempe ved native-løsninger er i vores optik tid og budget. Native kan tage lidt længere tid at udvikle. Omvendt slipper du for, at der senere hen skal udvikles yderligere (native) elementer, hvilket ofte er tilfældet ved en hybrid app.

Derudover er det som regel nemmere at finde én person til at udvikle det hele ved en hybrid app, mens du ved native som regel har én person der er specialiseret i Android, og én der er specialiseret i iOS. Der skal altså flere udviklere med i processen. Her kan der så argumenteres for værdien i ikke at placere det hele ved et enkelt individ i forhold til det faglige niveau af den færdige app løsning.

Ved at bruge specialiserede udviklere får du desuden en app, der i højere grad overholder platformens standarder, fordi udviklerne kender disse. Der er på mange områder stor forskel på hvordan en app bør opføre sig på hhv. Android og iOS.

Fordele ved hybrid apps

Hybrid løsninger er som regel billigere end native løsninger. I hvert fald på den korte bane. Derudover kan du sætte et mindre team/en enkeltperson på opgaven, da samme ressource(r) varetager opgaven til begge platforme – så længe der ikke skal udvikles native elementer ind i den hybride app, hvilket er tilfældet for de fleste hybrid løsninger før eller siden. Her kan det selvfølgelig ses som en fordel, at muligheden for at tilknytte native moduler overhovedet er der.

Hybride løsninger er oplagte til mindre projekter og prototyper, der stiller mindre krav til app’ens ydelse.

Ulemper ved hybrid apps

Når en hybrid app er udviklet, kan den afvikles på både Android og iPhone. For at kunne håndtere begge systemer, gør den brug af et ekstra ‘oversættelses-lag’ der dikterer over for de to apps, hvad de må og skal. Der vil derfor blive inkluderet en ekstra, unødvendig afhængighed i app’en, som både på kort og på lang sigt kan give udfordringer for den forestående udvikling, fremtidige drift og vedligeholdelse af app’en.

Af denne grund performer en hybrid app ikke så godt som en native app, og der vil være begrænsninger i forhold til adgang til enhedens hardware. Eftersom en hybrid app indeholder et oversætterlag, som er leveret af 3. part (f.eks. Microsoft, Facebook eller Adobe), så vil der være en uhensigtsmæssig afhængighed af leverandøren af det software, der laver denne oversætter. Det kan give ulemper, når app’en skal driftes, og når Apple og Android opdaterer deres operativsystemer.

Derudover er de hybride udviklingssprog udviklet i store virksomheder, som primært har haft til formål at få udviklet apps til at drifte egne produkter. Af samme grund er interessen for at udvikle funktionalitet, der ikke er til fordel for egen platform, begrænset. Som eksempler kan nævnes:

  • React Native udviklet af Facebook til egen platform
  • Xamarin er udviklet af Microsoft til egen platform
  • Flutter er udviklet af Google til egen platform

Desuden baserer hybrid værktøjer, til trods for at React har “native” i sit navn, sig på webteknologi og ikke app-teknologi. Hvis app’en får behov for at bruge en funktion, der endnu ikke er support for i den hybride platform, så skal der udvikles native iOS og Android kode, og her kommer hybrid-udvikleren hurtigt til kort.

Det samme gælder, når der skal integreres med tredjepartsservices. Langt de fleste tredjepartsservices udvikler kun SDK (udviklingskits/værktøjer) til native iOS og Android. Du kan derfor ikke bruge deres udstillede SDK’er, før der er udviklet en oversætter til det valgte hybrid-sprog.

Ofte skal en nativeudvikler alligevel inddrages

Som udgangspunkt bør du altid se en ren hybridløsning som muligheden for at kunne benytte laveste fællesnævner på de to platforme, forstået på den måde, at hvis noget kun er tilgængeligt på den ene platform, eksempelvis NFC-læsning eller lignende, så vil du ikke kunne benytte dette i en hybridløsning, da det skal være tilgængeligt på begge platforme.

Du kan dog vælge at inddrage noget native udvikling som “overbygning” på din hybridløsning for at åbne op for specifikke platforms-muligheder. Ved at gøre dette, vil en nativeudvikler skulle inddrages og herved mindskes den besparelse, som hybrid udviklingen har givet. Ligeledes øges kompleksiteten, hvilket påvirker driftsikkerheden.

Forskellen på native apps og hybrid apps

native-vs-hybrid

Tre løsninger som Makeable har leveret som native apps:

dol-sensors

App til kommunikation med verdens største leverandør af sensorer i landbrugssektoren via NFC.

I denne løsning var det vigtigheden i at kunne kommunikere med ekstern hardware samt muligheden for at kunne supportere alle fremtidige typer hardware, der understøttede beslutningen om at vælge native udvikling.

Se hele casen her

FTZ

App til optimering af processer på mere end 1.000 autoværksteder i hele Norden.

Vigtigheden af at have en app, der reagerer hurtigt, har intuitiv navigation og har bred support på ældre enheder gjorde, at valget faldt på en native løsning.

Se hele casen her
FTZ

MetriCorr

App til konfiguration af ekstern hardware via Bluetooth.

Kunden ønskede mulighed for at kunne udvikle nye typer hardware og kommunikationsformer og stadig sikre, at samme app og kodebase kunne anvendes og videreudvikles.

Kundens brugere spænder desuden bredt i IT-erfaring og alder. Derfor er det vigtigt at have en app, som er nem og intuitiv at anvende – også på de mere specielle, ældre enheder. Derfor faldt valget på en native løsning.

Se hele casen her
MetriCorr

Interesseret?
Bliv ringet op af Mads

(CEO, partner)


Tak, vi kontakter dig hurtigst muligt. + følg os på LinkedIn LinkedIn
Kontakt os

Hvorfor fravælge en hybrid løsning?

Begrænsning ved en hybrid app

Som nævnt udvikler vi også hybride apps her hos Makeable, men fælles for de løsninger, hvor vi har anbefalet en hybrid løsning er, at det har været begrænset til projekter, der enten har:

  • Et kortsigtet fokus
  • En stram økonomi i første version, hvorfor man bevidst vælger at lave en app, som man ikke ønsker at videreudvikle på på lang sigt
  • En løsning, som man ikke vil garantere drift på i mere end 1-2 år.
Native eller hybrid app udvikglin

Erfaring med hybrid, der har ført til native

Vi har været involveret i flere projekter, hvor kunden ønskede at anvende en hybrid platform, hvor vi rådgav kunden til at vælge en native løsning pga. projektets kompleksitet, driftsikkerhed mv.

I nogle tilfælde har kunden holdt fast i ønsket om en hybrid løsning, og vi har derfor, af faglige årsager, takket nej til opgaven. I flere af disse tilfælde er kunden efter lancering af deres hybrid løsning vendt retur til os med ønsket om udvikling af en ny native app.

Afklaring og konceptualisering

Hvorfor skiftet fra native app til hybrid app kan være en dårlig idé

Bankdata leverer en fælles app-platform til otte danske banker bl.a. Jyske Bank, Sydbank og Ringkjøbing Landbobank. Disse bankers app har været en meget populær og rost app baseret på native teknologi.

Henover sommeren 2021 har Bankdata relanceret alle disse bankers netbank app som en hybrid løsning. Denne relancering har resulteret i en markant dårligere app, som generelt giver en sløv brugeroplevelse sammenlignet med den native app, som brugerne tidligere har været vant til.

Nedenstående anmeldelser fra App store taler for sig selv.

Djurslands Bank – Native app anmeldelse før de skiftede til hybrid teknologi

Djurslands Bank – Hybrid app anmeldelse som den ser ud i dag

Har du brug for hjælp til at vælge app løsning?

Hos Makeable har vi over 10 års erfaring i at levere både native og hybride apps.

Vi undersøger altid den forretningsmæssige betydning for det enkelte app-projekt i forhold til kunder og virksomhed, og hjælper således til at vælge den rigtige og mest holdbare app-løsning – både på den korte og lange bane.

Er du i tvivl om hvilken løsning, der passer bedst til din virksomhed? Giv os et kald eller udfyld nedenstående formular, og vi kontakter dig.

Start dialogen, ring på:

70 70 17 47
kontakt@makeable.dk

Eller bliv ringet op


Tak, vi kontakter dig hurtigst muligt. + følg os på LinkedIn LinkedIn
Kontakt os