Å Bygge en mobilapplikasjon i 2020 Er ikke hva det pleide å være for fem år siden:
- det globale mobilapplikasjonsmarkedet toppet 106 milliarder dollar i 2018 og har vokst med en CAGR på 18,4% siden den gang.Android makter 74.13% av smarttelefoner, mens iOS markedsandel er anslått til 24.79%. KaiOS, deres nærmeste konkurrent, kommer tredje med 0.35%. Windows, BlackBerry, Symbian og andre mobile operativsystemer som en gang likte stor popularitet, har lenge falt i glemsel.
- Enterprise mobility, Tingenes Internett og e-handel har endret rollen som mobile applikasjoner. Bedrifter som henvender seg til apputviklere, trenger et verktøy for å distribuere innholdet sitt, sikre tilgang til bedriftsdata, administrere smarte enheter og hjelpe kundene med å fullføre transaksjoner raskere.
I Dag er » innfødt vs. cross-platform » spørsmålet er ikke lenger om å bygge treg ytelse, stadig krasjer apps til halve prisen av en iOS eller Android app.
med kraftige applikasjonsutviklingsverktøy på tvers av plattformer som Xamarin, React Native og Flutter, kan du lage apper med en 90% gjenbrukbar kodebase som bruker innebygd BRUKERGRENSESNITT og kontrollelementer, får tilgang til smarttelefonfunksjonalitet og overholder Retningslinjene For Menneskelig Grensesnitt og Materialdesign.
spørsmålet er, hva er riktig teknologi stabel for prosjektet?en innfødt mobilapp er et program som oppfyller kravene til et bestemt operativsystem ved Å bruke SDK-en og primærteknologistakken, samt maskinvareminne, kamera, sensorer og andre programmer installert på en enhet.
fordelene med native mobile apps inkluderer:
- Høy ytelse
- Robust funksjonalitet
- Sømløs brukeropplevelse
en cross-platform applikasjon er en mobil app som er kompatibel med flere operativsystemer og kan derfor kjøre på en smarttelefon, nettbrett, PC, smartwatch, og tilkoblet TV.70-90% gjenbrukbar kode
Det finnes To typer cross-platform mobile applikasjoner:
- Native cross-platform apps. Hvert operativsystem har SIN SDK og teknologi stack: Java Eller Kotlin For Android Og Objective-C eller Swift for iOS apps. Apputviklere på tvers av plattformer lager en enhetlig API som kjører på toppen av en innfødt SDK, bruker innfødte IDEs og bygger iOS-og Android-apper som deler samme kodebase. Native cross-platform applikasjoner er primært bygget Med Xamarin, React Native, Og Kotlin Multiplattform.
- Hybrid applikasjoner. Selv om mobilapper er designet for smarttelefoner og nettbrett, er det back-end-laget som håndterer forretningslogikken. Siden både iOS Og Android Sdk har avanserte webkomponenter, er det mulig å lage deler av et program grafisk brukergrensesnitt (GUI) MED HTML5, CSS og JavaScript. Deretter pakker utviklere koden I WebView-en nettleser som er samlet inn i en mobilapp, som gjør innholdet som et godt gammelt nettsted. Noen hybridapper samhandler selv med en smarttelefons maskinvare, selv om funksjonaliteten kan begrenses. De mest lovende hybrid app utvikling rammer på markedet akkurat nå Er Apache Cordova (tidligere kjent Som PhoneGap) og Flutter.
Top Cross-platform Mobile App Utviklingsverktøy
I Henhold til 2019 Stack Overflow Developer Survey, Xamarin, React Native, Flutter, Og Cordova var De mest populære kryssplattform rammer som brukes av profesjonelle utviklere:
la oss se hvordan de stable opp mot native app utviklingsteknologier:
- Xamarin. Xamarin er bygget med #C og. Net, Og lar utviklere lage applikasjoner på tvers av plattformer For Android, iOS, tvOS, macOS og Windows. Xamarin-applikasjoner med delte grensesnitt er utviklet Ved Hjelp Av Xamarin.Form. Hvis målet ditt er å designe et plattformspesifikt grensesnitt, Xamarin.iOS Og Xamarin.Android er go-to verktøy. Xamarin gir kraftige biblioteker for å få tilgang til native Og 3. parts Apier, og utnytte smarttelefon maskinvare og funksjonalitet: sensorer, kamera,tekstmeldinger, tilkobling, etc. Programmer som er opprettet Med Xamarin, fungerer på nivå med egne apper-selv når det gjelder å gjengi dynamiske data i sanntid.
- React Native. Avduket Av Facebook i 2015, Har React Native regjert i plattforms apputviklingsmarkedet helt siden. Rammeverket er basert På React-Et JavaScript-bibliotek for å bygge svært responsive brukergrensesnitt. Med React Native kan du opprette mobile applikasjoner som deler opptil 80% av kodebasen og kan få tilgang til bestemte innfødte funksjoner som akselerometer og smarttelefonkamera, selv om du kanskje trenger egen kode for iOS og Android for det.
- Apache Cordova. Apache Cordovas tech stack har HTML5, CSS3 og JavaScript. Mobilapputviklingsrammen gir tilgang til smarttelefonens innebygde akselerometer, fillagring, GPS, kontaktdata, media og varsler. Apache Cordova har flere fordeler, inkludert en ganske enkel API og muligheten til å ansette noen js rammeverk. Plattformen visualiserer imidlertid app UIs gjennom en nettleser, noe som kan føre til lag. Også, Noen Av Cordovas plugins er datert, så utviklere må ofte skrive tilpassede fra bunnen av.
- Flagre. Flutter er Googles UI toolkit som lar utviklere lage opprinnelig kompilerte applikasjoner for mobile enheter, nettlesere og Pcer som bruker samme kodebase. Flutter er basert På Dart-et relativt nytt programmeringsspråk som deler Mange funksjoner Med Swift og Kotlin og kan forvandles til JavaScript-kode. Med Flutter kan du designe programmer som gjengir raskt og tilpasser seg plattformspesifikk ux-logikk. Rammeverket er mest egnet FOR mvp utvikling.En annen kryssplattform app utviklingsteknologi som er stadig i popularitet Er Kotlin Multiplattform Prosjekter, en eksperimentell funksjon støttet Av Kotlin 1.2 og 1.3. Det tillater utviklere å skille BRUKERGRENSESNITTET og baksiden av en mobilapp. Med den delte forretningslogikken blir det enklere å skrive apper for flere plattformer. Men Få Android-utviklere er kjent med funksjonen ennå. Så du kan ha det vanskelig å finne et passende lag og slå til utviklere som spesialiserer Seg På React Native, Flutter eller Xamarin kryssplattformutvikling til slutt.
Pros & Cons Av Cross-platform Mobile App Utvikling
fordelene ved å bygge en cross-platform søknad inkluderer:
- Kortere utviklingstid. Forutsatt at du velger riktig teknisk stabel og planlegger prosjektet grundig, kan du kanskje gjenbruke opptil 80% av den opprinnelige kodebasen — både på baksiden og UI-nivåene-for flere plattformer. Dette hjelper bedrifter med å redusere tiden som kreves for å fikse back-end logikkproblemer (som vanligvis tar 10-20% av total prosjekttid) og starte apper raskere.
- Eksponering for et større antall brukere. De fleste apper på tvers av plattformer kjører På Både Android og iOS, Samt Windows, macOS, Linux og operativsystemer som støtter logikken til smartwatches og tilkoblede husholdningsapparater.
- Oppdaterer synkronisering. I en verden der mobilapper får opptil fire oppdateringer hver måned, kan vedlikeholdskostnader forbruke en stor mengde appinntekter — og det er der apper på tvers av plattformer går bort den klare vinneren.
og her er hvor plattformuavhengige applikasjoner kan komme til kort:
- Ytelse. Nar DET gjelder CPU og GPU-tunge oppgaver, er det et betydelig ytelsesgap mellom innfodte og hybride applikasjoner. Apper bygget Med Xamarin.iOS Og Xamarin.Android, derimot, viser nesten innfødte resultater.
- Bratt læringskurve. På grunn av det høye abstraksjonsnivået er kryssplattformskode vanskelig å skrive. Utviklere som spesialiserer seg på plattformuavhengige applikasjoner, må ha en god forståelse av både iOS-og Android-økosystemene, samt kryssplattformverktøyene etter eget valg.
- Begrenset støtte av 3. parts biblioteker. Ikke alle biblioteker og Sdk-er fra 3. part fungerer synkronisert med rammeverk for apputvikling på tvers av plattformer. Dette ber utviklere om å vurdere alternativer eller finne en måte å integrere ønsket funksjonalitet i en mobilapp, noe som er tidkrevende.
Å Velge Mellom Native Og Cross-platform Applikasjoner
For noen fem år siden hadde selskaper som behandlet mobilapper som et sentralt forretningsverktøy ikke annet valg enn å gå innfødt. Nå kan modne apputviklingsverktøy På tvers av plattformer som Xamarin og React Native enkelt slå sammen ikke-opprinnelig kode med OS-spesifikk funksjonalitet.
men alle tverrplattformsrammer er ikke skapt like.Airbnb, hvis nettsted hovedsakelig er bygget Med React, bestemte seg for å droppe sine egne mobilapper til fordel for en plattformsløsning. Selskapet satset På React Native og brukte to år på å implementere avanserte native funksjoner som elementoverganger, geofencing og parallax-rulling på flere plattformer. To år senere annonserte Airbnb at de på grunn av tekniske utfordringer og mangel på IT-ressurser var «sunsetting React Native» og gikk tilbake til iOS og Android.
Det betyr ikke At React på noen måte er dårligere Enn Xamarin eller innfødte applikasjonsutviklingsverktøy. Det er bare at for mange faktorer, inkludert mobilapplikasjonssettet og forventet arbeidsbelastning, kommer inn i spill når du bestemmer deg for å replatformere programvaren eller integrere en nybygd app i en eksisterende IT-infrastruktur.