Maybaygiare.org

Blog Network

Sådan kodes en App: en oversigt over udvikling af mobilapp

med forbrugere, der bruger mere end 180 milliarder timer inde i smartphone-apps hver måned, fortsætter appudviklingens tiltrækningskraft med at stige, og mange udviklere lærer, hvordan man koder app-apps, der bruges til at mobile apps fra bunden.

i denne artikel gennemgår vi først de forskellige typer apps, inden vi ser nærmere på mobilappkodning i praksis.

App Udvikling

in-app udvikling, den mest grundlæggende forskel er, at mellem Internet apps og mobile apps. Apps kræver en aktiv internetforbindelse for at køre, mens mobilapps fungerer offline. Apps på smartphones er simpelthen mobiloptimerede hjemmesider, mens mobilapps skal hentes fra en telefons app store.

Mobile apps er overlegne med hensyn til effektivitet og hastighed, men kræver, at brugerne manuelt eller automatisk henter opdateringer i stedet for at opdatere sig selv, som apps gør. Udvikling af mobilapps har en tendens til at være mere ressourceintensiv end oprettelse af onlineapps, men mobilapps er hurtigere og overgår normalt funktionelt deres modparter på nettet. For eksempel bruger mobilapps ofte telefonfunktioner som kameraer, som internetapps normalt ikke har adgang til.

Du kan blive overrasket over at høre, at der er flere slags mobilapps, så vi fortsætter med at skelne mellem de to hovedtyper: native apps og apps på tværs af platforme.

Native Apps vs. Apps på tværs af platforme

Native applikationer er dem, der er bygget med et givet operativsystem (OS) i tankerne ved hjælp af specifikke programmeringssprog og integrerede udviklingsmiljøer (ide ‘ er). For eksempel skal en oprindelig applikation til iOS skrives på det sprog, som iOS forventer, ved hjælp af de API ‘ er, som iOS udsætter. Hvis udviklere bruger Objective-C til en iOS-app eller Java til en Android-app sammen med de relevante API ‘ er, er sådanne applikationer “native”, for så vidt som det underliggende systems muligheder bruges som forventet af systemet. Native apps bruger også udstyrshukommelse, kamera, sensorer og andre programmer, der er installeret på en enhed gennem API ‘ erne, der er eksponeret af det underliggende system.

derimod har tværplatformsrammer til hensigt at levere universelle løsninger understøttet af flere mobile operativsystemer på en gang. De bruger en fælles kerne med Per-platform tilpasninger til at passe en applikation til flere platforme, så der er ingen grund til at oprette unikke elementer til hvert operativsystem.

Hvad er fordelene og udfordringerne ved hver mobilapp-tilgang?

Native apps tilbyder højere ydelse, større energieffektivitet, færre begrænsninger i arkitektur og funktionalitet og en grænseflade, der fuldt ud overholder den givne platforms retningslinjer. Vedligeholdelse af dem kommer dog til en høj pris: mobilapps får undertiden flere opdateringer hver måned, og at holde dem opdaterede kan forbruge udviklertid, der ellers kunne bruges på ny funktionalitet. En indfødt apps publikum er også begrænset til brugere af et bestemt operativsystem, medmindre dets skabere udøver en betydelig indsats for at udvikle den samme app til flere systemer.

omvendt Letter apps på tværs af platforme kodedeling, da udviklere ikke behøver at oprette en app til iOS og en separat til Android, men ofte er i stand til at dele 80% eller mere af deres kode på tværs af platforme. Mindre kodningsindsats, der kræves, gør det muligt at vedligeholde appen på flere platforme, selv med et lille team.

det er dog svært at skræddersy en enkelt løsning til forskellige operativsystemer. En cross-platform løsning er udpeget som sådan netop fordi dens rammer giver dig mulighed for at bruge multi-platform funktionalitet. En cross-platform applikations interface er normalt universel, hvilket fører til lags og kompleksiteter ved implementering af specifikke elementer i hvert operativsystem, da funktioner, der er unikke for en bestemt platform, typisk ikke understøttes. Mens en ramme kan få en app til at se ud og føles som den tilsigtede platform, uden yderligere arbejde fra udvikleren, designvalg er normalt begrænset.

lad os nu se nærmere på de værktøjskæder, der kræves til begge apptyper, og skelne yderligere mellem endnu flere variationer af mobilapps inden for økosystemet på tværs af platforme.

Native Apps

i native app-udvikling er fortrolighed med dit valgte operativsystems IDE-og projektstruktur afgørende. Heldigvis er iOS-og Android-operativsystemerne veldokumenterede og leverer deres egne udviklingsværktøjer, grænsefladeelementer og programmeludviklingssæt (SDK ‘ er), som udviklere kan bruge til at opbygge native mobile apps.

Apple-enheder kører på iOS-operativsystemet og er bygget ved hjælp af enten Objective-C eller hurtig sammen med koden IDE. På trods af at det er to separate platforme, deler iOS og macOS ligheder, så hvis du vil køre din mobilapp på et Apple-skrivebord, kan du indarbejde moderne iOS-funktioner i din app. Dette vil forenkle overgangen til macOS (da opdaterede funktioner automatisk kortlægges til passende macOS-adfærd).i modsætning hertil involverer Android-udviklingsværktøjskæden normalt Android Studio eller Eclipse IDE, selvom du muligvis også bruger andre ide ‘ er. Android Studio er den officielle IDE til Android app udvikling, og det vigtigste program til at skrive kode og samle apps fra forskellige pakker og biblioteker. Både Android Studio og Android SDK er gratis at hente og leveres med programbiblioteker og prøvekode. Mens Android-apps er bygget med Java, kan du opbygge en Android-app på andre sprog, der kører på Java Virtual Machine, såsom Kotlin.

Hybrid cross-Platform Apps

der er to forskellige typer af cross-platform apps: hybrid apps og native cross-platform apps. Hybrid apps bruger kun HTML5, CSS og JavaScript til at oprette dele af en apps grafiske brugergrænseflade (GUI). Lyder det som en internet-app? Mens både hybride mobilapps og internetapps gengiver HTML, bruger hybridapps app-indlejrede bro.sere som f. eks.

nogle hybridapps interagerer endda med en smartphones udstyr, selvom funktionaliteten kan begrænses. Apache Cordova, Ionic og Flutter er blandt de mest lovende hybrid appudviklingsrammer, der i øjeblikket findes på markedet.

Native cross-Platform Apps

Native cross-platform apps er derimod ikke bygget med HTML/CSS / JS rammer — en udvikler vil i stedet oprette en samlet API, der kører oven på en native SDK. Ved at gøre brug af en indfødt IDE kombineret med denne API kan en udvikler bygge iOS-og Android-apps, der deler den samme kodebase, samtidig med at de giver en næsten indfødt oplevelse. Native cross-platform applikationer er primært bygget med Ksamarin, React Native og Kotlin Multiplatform.

dette lyder måske forvirrende, så lad os se på, hvordan en sådan mobil UI-ramme fungerer. Vi tager sagen om Ksamarin. Net giver udviklere mulighed for at oprette applikationer på tværs af platforme med delte grænseflader ved hjælp af Hsamarin.Form. – Amarin.iOS og Camarin.Android er især nyttige til oprettelse af iOS-og Android-grænseflader. Ud over at give biblioteker, der giver native og tredjeparts API-adgang, giver vi apps på tværs af platforme adgang til smartphone-udstyr og funktionalitet, der tidligere kun findes i native apps. Ved at kombinere næsten native ydeevne med kode genanvendelighed, native cross-platform rammer indsnævre præstationsgabet mellem native og hybrid apps med potentiale for mere omkostningseffektiv udvikling.

hvor skal du starte?

Hvis du vil drage fordel af alt, hvad en given mobilplatform har at tilbyde, kan du prøve at opbygge en indbygget mobilapp. Din app vil sandsynligvis prale af højere ydelse, mere robust funktionalitet og en bedre brugeroplevelse sammenlignet med en modstykke på tværs af platforme. Udvikling med en bestemt SDK er et godt udgangspunkt, da du står over for en mere håndterbar læringskurve i forhold til cross-platform kode.

at vælge en platformuafhængig mulighed kan være det bedste valg for dem, der søger nem vedligeholdelse og bredere rækkevidde og med kortere tid til at udvikle sig. Så længe du vælger den rigtige tech stack, kan du muligvis genbruge størstedelen af den originale backend-og UI-kode til flere platforme.

Hvis du vælger at gå multi-platform rute, hvordan kan du vide, om at vælge en hybrid (JS/HTML/CSS) eller native cross-platform app? Hvis du leder efter en nem start og ikke kender mobil, kan du prøve JS/HTML/CSS-tilgangen. Hvis du søger en næsten indfødt oplevelse, men gerne vil være på flere platforme (og ikke kan investere i en app til hver platform), skal du gå til native cross-platform.

Læs mere

i denne artikel gennemgik vi forskellene mellem mobilapps og internetapps, før vi kiggede nærmere på forskellige typer mobilapps. Vi dækkede native apps, hybrid cross-platform apps og native cross-platform apps.

Hvis du forestiller dig en karriere inden for mobilappudvikling, vil vores Introduktion til programmering online kursus give et solidt fundament for at arbejde med både cross-platform og native apps.

begynd at lære

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.