Jeg vil udvikle Android-apps - Hvilke sprog skal jeg lære?

Forfatter: Laura McKinney
Oprettelsesdato: 2 April 2021
Opdateringsdato: 1 Juli 2024
Anonim
Jeg vil udvikle Android-apps - Hvilke sprog skal jeg lære? - Apps
Jeg vil udvikle Android-apps - Hvilke sprog skal jeg lære? - Apps

Indhold


Så du har besluttet, at du gerne vil lære at udvikle Android-apps? Store! Desværre kan intentioner kun føre dig indtil videre. At lære at kode kan være kompliceret. Nogle gange er det ikke engang klart, hvor man skal starte. Du har sandsynligvis en række spørgsmål at besvare, inden du engang kommer i gang?

  • Hvilket programmeringssprog skal du lære?
  • Hvor kan du lære om dit valgte sprog?
  • Når du har forstået det grundlæggende,hvor begynder du endda at indtaste koden?

I dette indlæg forsøger vi at besvare det første spørgsmål. Beslutning om hvilket programmeringssprog der skal startes med vil helt afhænge af, hvad du håber at opnå. Når du først har kendt sproget, kan du finde IDE og de værktøjer, der skal matche.

Læs næste:De bedste Android-appproducenter til at oprette apps og opbygge dem med nulkode


Ser, mens du læser et websted, der hedder , er det sandsynligvis sikkert at antage, at du er interesseret i, hvordan man overvejende opretter Android-apps. Og i dette tilfælde har du et par muligheder.

Tag dit valg

Hvis du vil udvikle Android-apps, er trin et at vælge et sprog. Forskellene mellem de forskellige Android-programmeringssprog kan være lidt komplekse og nuancerede. At vælge, hvilken man skal starte med, kræver en forståelse af deres individuelle styrker og svagheder.

Men jeg vil heller ikke kede dig ihjel. Du finder en kort oversigt over hver sprogindstilling her efterfulgt af mere detaljerede oplysninger nedenfor. Vælg den der ser interessant ud for dig og spring derefter til den.

De sprog, du måske overvejer at lære til Android-udvikling, inkluderer:


  • Java - Java er det officielle sprog for Android-udvikling og understøttes af Android Studio. Det har dog en stejl indlæringskurve.
  • Kotlin - Kotlin blev for nylig introduceret som et sekundært “officielt” Java-sprog.Det ligner Java på mange måder, men er lidt lettere at få dit hoved rundt.
  • C / C ++ - Android Studio understøtter også C ++ ved brug af Java NDK. Dette giver mulighed for native kodningsprogrammer, som kan være nyttige til ting som spil. C ++ er dog mere kompliceret.
  • C # - C # er et lidt mere nybegyndervenligt alternativ til C eller C ++, der tilslører mere kode. Det understøttes af nogle meget praktiske værktøjer som Unity og Xamarin, som er gode til spiludvikling og til tværplatformudvikling.
  • BASIC - En bonusindstilling er at lære BASIC og prøve B4A IDE fra Anywhere-software. Dette er et let, men kraftfuldt værktøj, men bestemt meget mere niche!
  • Corona / LUA - Et andet cross-platform værktøj, der bygger på LUA. Det forenkler massivt appopbygningsprocessen og giver dig mulighed for at ringe til indbyggede biblioteker.
  • PhoneGap (HTML, CSS, JavaScript) - Hvis du allerede ved, hvordan man bygger interaktive websider, kan du bruge denne viden med PhoneGap til at opbygge en mere grundlæggende cross-platform app.

Java

Når det er tid til at udvikle Android-apps, er den første og mest populære mulighed Java. Java er officiel sprog til Android-udvikling, hvilket betyder, at det er det, der har mest støtte fra Google, og det, som de fleste apps i Play Store er bygget med.

Den første måde at udvikle Android-apps på er at gå videre og hente Android Studio. Dette er et stykke software kaldet en IDE eller Integreret Udviklingsmiljø. Det leveres pakket med Android SDK (et sæt værktøjer, der specifikt gør det lettere at udvikle Android) og dybest set vil dette give dig alt hvad du har brug for et sted for at komme i gang.

De officielle tutorials og dokumentation fra Google refererer til denne metode, og du finder det største antal biblioteker (gratis kode til forbedring af dine egne apps) og tutorials, der fokuserer på denne metode.

Java blev selv frigivet af Sun Microsystems allerede i 1995 og bruges til en lang række programmeringsapplikationer. Java-kode køres af en "virtuel maskine", der kører på Android-enheder og fortolker koden.

Læs næste: En apps anatomi: En introduktion til aktivitetscykler

Desværre er Java også lidt kompliceret, og det er ikke et fantastisk ”førstesprog.” Dette er, hvad der faktisk vil være den største barriere for mange mennesker, der ønsker at komme i gang med Android-udvikling. Android er et objektorienteret programmeringssprog med forvirrende emner som konstruktører, undtagelser fra nulmarkøren, kontrollerede undtagelser og mere. Det er ikke meget læseligt, og du bruger en masse "kedelplade" -kode, der gør enkle ting. Tilføj Java SDK, og tingene bliver stadig mere komplicerede - en første gang kan koderen kæmpe for at vide, hvad der er Java og hvad der er Android! Udvikling ved hjælp af denne rute kræver også en grundlæggende forståelse af koncepter som Gradle, som f.eks. Android Manifest og markup-sproget XML.

Det er ikke at sige, at Java er et dårligt sprog - langt fra det. Ikke kun ville det være forkert at kalde et hvilket som helst sprog “dårligt”, men det er også sandt, at de fleste af Java-ulemperne faktisk er der til vores eget bedste og tilskynder til ren kode. En masse mennesker elsker Java af denne grund, og det er også en af ​​de mest alsidige og udbredte. I henhold til PYPL (PopularitY of Programming Sprog) -tabellen er Java det mest efterspurgte programmeringssprog blandt arbejdsgivere.

At gøre livet meget enklere er Android Studio, der har været fra styrke til styrke i de sidste par år. Funktioner som en visuel designer og forslag gør processen en ret smidigere, mens avancerede, kraftfulde funktioner tilføjes hele tiden for at give udviklere adgang til ting som skylagring med nem implementering. Det er værd at komme ombord, selvom denne hurtige fremgang gør det svært at følge med nogle gange.

Så hvad er dommen? For dem, der ønsker den fulde Android-udviklingsoplevelse, er dykning i Java det bedste sted at starte. For dem, der bliver afskrækket af kompleks kode, er det muligt at arbejde stort set med designeren og følge tutorials for noget mere kompliceret. Hvis du imidlertid er en nybegynder, og du ønsker at lave et spil, eller bare ønsker at begynde at lære for at lære, og du gerne vil have nogle givende projekter fra jorden, så anbefaler jeg, at du starter med noget lettere og kom tilbage til dette, når du har fået en smule mere jordforbindelse.

Se Garys introduktion til Java her.

Bemærk:

Når det er sagt, er det også muligt at bruge Java sammen med Unity. Jeg vil diskutere Enhed under afsnittet om C #, men bemærk bare, at du kan vælge det lidt mere komplicerede Java-sprog, når du går denne rute og derefter bruge det til lettere overgang til udvikling med Android Studio.

Kotlin

Kotlin sprang for nylig ud på scenen som det "andet" officielle sprog til Android-udvikling. Nogle spekulationer antyder, at dette sandsynligvis hæver sprogets profil, og at det muligvis kan blive den næste Swift.

Som Java kører Kotlin på Java Virtual Machine. Det er også fuldstændigt interoperabelt med Java og forårsager ikke nogen afmatning eller stigning i filstørrelser. Forskellen er, at Kotlin kræver mindre "kedelplade" -kode, hvilket betyder, at det er et mere strømlinet og letlæseligt system. Det fjerner også fejl som undtagelser fra nulpunkt og undskylder endda dig fra at afslutte hver linje med halvkolonier. Kort sagt, det er dejligt, hvis du bare lærer at udvikle Android-apps for første gang.

Så Kotlin er bestemt et lettere udgangspunkt for begyndere, og det faktum, at du stadig kan bruge Android Studio, er et stort plus. Det er dog stadig ikke så simpelt at hente som siger C # med Enhed, og samfundsstøtten er i sin relative barndom. Faktisk er du i øjeblikket nødt til at downloade en beta-version af Android Studio for at få out-the-box support.

Kotlin burde stadig være på din radar og kunne tilbyde et lettere indgangspunkt til "ordentlig" Android-udvikling. Hvilket er sandsynligt, hvorfor Google introducerede det i første omgang.

Lær hvorfor du skal prøve Kotlin her.

C / C ++

Det er fair at sige, at de fleste, der læser dette, ikke bør vælge denne rute til at udvikle Android-apps. Android Studio tilbyder support til C / C ++ -kode ved hjælp af Android NDK (Native Development Kit). Dette betyder, at du skriver kode, der ikke kører på Java Virtual Machine, men snarere kører naturligt på enheden og giver dig mere kontrol over ting som hukommelse. For intensive applikationer som 3D-spil kan dette give dig mulighed for at skubbe ekstra ydelse ud af en Android-enhed. Det betyder også, at du kan bruge biblioteker skrevet i C eller C ++.

Men det har også en tendens til at være meget sværere at konfigurere, det introducerer flere fejl, og det er mindre fleksibelt. Og hvis du gerne ville oprette et computerspil, ville du sandsynligvis have det bedre med at bruge en færdiglavet spilmotor

C #

C # er dybest set en lettere, ren objektorienteret version af C og C ++ udviklet af Microsoft. Det havde til formål at bringe kraften i C ++ og letheden af ​​Visual Basic og læser lidt som en forenklet version af Java. Ligesom Java, indsamles C # affald, hvilket betyder, at du ikke behøver at bekymre dig om ting som hukommelseslækager og frigøre hukommelse selv. På samme tid er C # imidlertid mere moderne end Java med en renere syntaks - selvom dette måske bare er min egen bias der kommer igennem. Det bedste sprog til at udvikle Android-apps kommer ofte bare ned på smag.

Hvis du dog ønsker en særlig nem og indbydende introduktion til Android-appudvikling, anbefaler jeg kombinationen af ​​C # og Unity. Enhed er en "spilmotor" (hvilket betyder, at den giver ting som fysikberegninger og 3D-grafik gengivelse) og en IDE som Android Studio. Dette er et gratis værktøj, der gør det utroligt nemt at oprette dine egne spil - med blot et par kodelinjer kan du få et grundlæggende platformspil oprettet på mindre end en time. Ingen overdrivelse. Og det er også perfekt kraftfuldt, idet det er det værktøj, der bruges af de fleste spilstudier i Google Play Store. Og det er multiplatform også. Oven i alt giver udviklingen på denne måde en meget praktisk måde at lære objektorienteret kodning på (fordi objekterne i dette tilfælde faktisk er objekter det meste af tiden).

Begrænsningen? Enhed er nyttigt til at oprette spil, men er under-par til at oprette standard Android-apps, især hvis du vil overholde Googles sprog om materialedesign. Hvis du vil blive en professionel Android-udvikler, vil denne ikke-standardrute begrænse dine beskæftigelsesmuligheder - medmindre dit mål er at blive en spiludvikler, i hvilket tilfælde dette er en perfekt relevant og professionel baggrund.

Ikke interesseret i Enhed? Derefter kan du overveje Unreal i stedet (bedre grafik, mindre velegnet til mobil) eller forenklede spilproducenter som GameMaker Studio.

C # kan også bruges med Xamarin gennem Visual Studio. Dette ligner mere traditionel Android-udvikling med fordelen ved at være tværplatform (en kodebase til Android og iOS). For en komplet begynder er denne rute igen et lidt stødt indgangspunkt til Android-udvikling - men for et lille firma, der ønsker at oprette en app til iOS og Android, giver det mening, og der er masser af support og information derude for at hjælpe dig .

GRUNDLÆGGENDE

Kan du huske, hvordan jeg sagde, at C # var et forsøg på at tilbyde kraften i C med lethed af Visual BASIC? Nå, det skyldes, at BASIC (Begynder symbolsk instruktionskode til begyndere) er utroligt behageligt at bruge og et absolut ideelt spring til at lære at kode.

Desværre understøttes det ikke officielt af Android Studio, og du kan heller ikke bruge det i Unity eller Xamarin. Den gode nyhed er, at der er en mindre kendt mulighed for at udvikle Android-apps i BASIC kaldet B4A fra Anywhere Software. Dette er et forkortelse for 'BASIC 4 Android', og som du kunne forvente, giver det dig mulighed for at kode Android-apps med BASIC. Det er bestemt ikke det første valg for de fleste programmerere, der ønsker at udvikle Android-apps, men det er altid rart at have flere muligheder.

B4A er designet som et RAD eller Rapid Application Development-miljø. Der er mange andre smarte designbeslutninger for at gøre livet lettere, og der er et meget støttende samfund, hvis du har spørgsmål.

Dette er en fantastisk måde at lære at kode, og du kan bygge nogle temmelig magtfulde apps ved hjælp af denne metode alene. Det er dog ikke ideelt til at lave high-end-spil og lider igen af ​​at være en “uofficiel” mulighed - så det er sværere at skabe noget, der nøjagtigt opfylder Materiales design specifikationer, og du vil have det sværere at arbejde som en professionel udvikler med kun BASIC . Den anden store ulempe er, at dette er den eneste mulighed på listen, der ikke er gratis.

Corona

Corona tilbyder en anden betydeligt enklere mulighed for at udvikle Android-apps, mens du stadig giver dig en rimelig mængde magt og kontrol. Du koder i LUA, som allerede er meget enklere end Java, og oven på det vil Corona SDK (Software Development Kit) gøre tingene endnu lettere. Det understøtter alle indbyggede biblioteker, giver dig mulighed for at udgive til flere platforme. Det bruges stort set til at oprette spil, men kan også bruges på en række andre måder. Du skal bruge en teksteditor som Notepad ++ til at indtaste din kode, og du kan køre nævnte kode på en emulator uden engang at skulle kompilere først. Når du er klar til at oprette en APK og implementere, kan du gøre det ved hjælp af et online-værktøj.

Dette kræver grundlæggende kodningsfærdigheder, men det giver en dejlig og blid introduktion til programmeringsverdenen. Men på samme tid er det bestemt begrænset til en vis grad og er et par skridt fjernet fra at komme ind i "app builder" territorium. Dette er mere nyttigt for nogen, der ønsker at skabe noget relativt enkelt og ikke er så bekymret for at udvikle deres kodningsfærdigheder eller blive en professionel. Hvis du vil bruge funktioner som køb i appen, skal du betale et gebyr. Det samme gælder ved brug af oprindelige Android API'er.

PhoneGap

Endelig er den sidste store "forenklede" mulighed, du kan dreje for at udvikle Android-apps, PhoneGap, medmindre du i stedet ønsker at vende dig til et app-builder-program. PhoneGap drives af Apache Cordova og giver dig i det væsentlige mulighed for at oprette apps ved hjælp af den samme kode, som du normalt brugte til at oprette et websted: HTML, CSS og JavaScript. Dette vises derefter via en "WebView", men pakkes som en app. PhoneGap fungerer derefter som en bro, så udviklere får adgang til nogle basale indbyggede funktioner på telefonen eller tabletten - såsom accelerometeret eller kameraet.

Dette er dog ikke rigtig “sand” Android-udvikling, og den eneste virkelige programmering vil være JavaScript. For mange grundlæggende opgaver gør det jobbet, men hvis du vil være i stand til at hævde ægte "Android-app-udviklere" (det er en ting), skal du modige et af de andre valg på denne liste.

Konklusion

Så tag dit valg! Jeg ville ønske, at der var en måde at udvikle Android-apps (let) med Python, men ellers har du et bredt udvalg af forskellige muligheder der til at udvikle Android-apps: fra Java og Kotlin, til C, C # og BASIC! Du kan endda bruge HTML og CSS til at lave noget enkelt ved hjælp af PhoneGap.

Det rigtige valg afhænger af dine følsomheder og dine mål, men uanset hvad du beslutter dig, vil du opdage, at det at lære at kode er en fantastisk givende oplevelse og en, der åbner et væld af døre for dig. Og at lære at kode med Android er det perfekte sted at starte. Forhåbentlig nu er du i det mindste nu lidt mere om, hvordan du udvikler Android-apps, men hvis du har spørgsmål, råb dem i kommentarerne, og vores team - og vores læsere - vil gøre vores bedste for at besvare dem. Held og lykke!

Læs næste: En introduktion til Java-syntaks til Android-udvikling | Forbrugende API'er: Kom godt i gang med Retrofit på Android

Din marte hjemreje kan begynde med noget å enkelt om at købe et par marte pærer og ændre temningen i et rum og gå til et punkt, hvor du kan kontrollere alt i dit hu uden fyik ...

Hvi du nogeninde har udforket verdenen af ​​oftwareudvikling, er chancerne for, at du har hørt om GitHub.Denne kodehotingplatform er en af ​​de met populære måder for udviklere at v...

Vores Publikationer.