App udvikling
Native eller hybrid app
Fra et kvalitetsmæssigt synspunkt anbefaler vi altid native appudvikling. Her kan du læse hvorfor.
Hvorfor anbefaler vi native appudvikling?
Hos Makeable har vi en klar præference i forhold til native app løsninger. De performer bedre teknisk, forretningsmæssigt og giver brugeren bedre oplevelser. Desuden appens levetid, vedligeholdelse og tilpasningsevne og langt bedre på tværs af platforme.
Og hvorfor så det? Native apps er skræddersyet til specifikke enheder, hvilket sikrer optimal ydelse og integration for netop din virksomhed eller idé.
Læs videre herunder, hvor du kan blive meget klogere på forskellen på native apps og hybrid apps og også 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.
Ulemper ved native apps
Den eneste ulempe ved native-løsninger er 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.
Ulemper ved hybride 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 er 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 native udvikler 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.
Fordele ved hybride 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
Vi var med fra begyndelsen
og har hjulpet 100+ virksomheder
- Industri
Autobranchens vigtigste værktøj
- B2C
- Green tech
- Industri
Verdens bedste pantsystem tager et stort skridt fremad
- Sundhed
Appen “Mit Liv – min sundhed” hjælper borgerne
- Green tech
- Industri
Datadrevet svineproduktion – en ny æra for landbruget
- B2C
App til nyheder i hele Nordjylland
Appen “TR i FOA” gør arbejdet mere effektivt
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.
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.
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.