Lær C # programmering til Android

Forfatter: John Stephens
Oprettelsesdato: 24 Januar 2021
Opdateringsdato: 2 Juli 2024
Anonim
Lær C # programmering til Android - Apps
Lær C # programmering til Android - Apps

Indhold


I dette indlæg lærer du om C # -programmering til Android, samt hvor det passer ind i den store plan for Android-udvikling.

Hvis du er interesseret i at blive en Android-udvikler, kan du være under indtrykket af, at du har brug for at lære et af to sprog: Java eller Kotlin. Dette er de to sprog, der officielt understøttes af Android Studio, og derfor fokuserer de to sprog mange guider og tutorials på. Android-udvikling er meget mere fleksibel og varieret end det, og der er masser af flere måder at nærme sig den på. Mange af disse involverer C #.

Læs:Jeg vil udvikle Android-apps - hvilke sprog skal jeg lære?

C # er det programmeringssprog, du vil bruge, hvis du vælger at opbygge et spil i Unity for eksempel - hvilket også tilfældigvis er den mest populære og mest anvendte spilmotor i Play Store. Generelt er det nyttigt at lære C # programmering, hvis du overhovedet er interesseret i spiludvikling.


Du bør også lære C # programmering, hvis du vil bruge Xamarin. Xamarin er et værktøj, der giver udviklere mulighed for at bygge apps ved hjælp af Visual Studio, der let kan overføres til både iOS og Android, perfekt til cross platform-projekter.

Så med det sagt er der bestemt god grund til at lære C # programmering til Android. Lad os se på, hvad du har brug for at vide.

En hurtig introduktion - C # vs Java

C # er et objektorienteret programmeringssprog, der blev udviklet af Microsoft omkring 2000 med det mål at være moderne, enkel og fleksibel. Ligesom Java (udviklet af Sun Microsystem i 1990), udviklede det sig oprindeligt fra C ++, hvilket sikrede, at der er mange ligheder mellem de to. For eksempel bruger begge den samme "syntaktiske base", hvilket betyder, at de effektivt bruger meget af den samme terminologi og struktur. Der er et par mindre forskelle, men hvis du er bekendt med det ene sprog, skal du være i stand til at forstå en masse af det andet uden at skulle have lært det specifikt. For begyndere vil mange dog finde ud af, at det er lidt lettere at lære C # programmering.


Som objektorienterede sprog vil både C # og Java beskrive objekter gennem klasser. Dette er en modulær tilgang til programmering, der gør det muligt at bruge kodestykker igen og igen.

Hvor C # dog adskiller sig fra Java, er i dens brug af delegerede, dens tilgang til begivenhedslytting, virtuelle vs endelige egenskaber, implicit casting og mere.

Den gode nyhed: du behøver faktisk ikke at vide, hvad det meste af dette betyder, når du først begynder at lære C #. Den vigtigste afhentning er, at strukturen bare er lidt lettere at lære i C # og har en tendens til at kræve mindre indtastning. Dette gælder især i betragtning af, at når du lærer Java til Android, skal du også gøre dig bekendt med de mange klasser og API'er, der er nødvendige for at oprette Android-apps. Således lærer du måske også C # -programmering som et springbræt til Java.

Hej Verden! i C #

Tradition i kodningens verden er, at hver gang du lærer et nyt sprog, skal du oprette et simpelt program til at vise "Hello World!" På skærmen. Dette sikrer dybest set, at du er i stand til at få de nødvendige værktøjer i gang og at kompilere noget enkelt. Det er som at læse "test, test, 1, 2, 3" i en mikrofon!

I dette tilfælde bruger vi Visual Studio til at oprette en konsol-app. Så når du har gået i gang og downloadet Visual Studio (det er gratis), skal du klikke på:

Fil> Ny> Projekt

Og så:

Visual C #> Windows Classic Desktop> Konsoleapp (.NET Framework)

Sådan bygger vi en app, der kører i Windows-konsollen.

Når det er gjort, vises det nakne knoglestruktur i dit projekt i hovedvinduet. Du får en kode der ser sådan ud:

namespace ConsoleApp3 {class Program {statisk void Main (string args) {}}}

Nu tilføj blot to linjer, sådan:

namespace ConsoleApp3 {class Program {statisk void Main (string args) {Console.WriteLine ("Hello World!"); Console.ReadKey (); }}}

Dette vil skrive “Hello World!” Til skærmen og derefter vente på et tastetryk. Når brugeren berører en vilkårlig tast, afslutter programmet og afslutter automatisk.

Bemærk, at begge disse linjer slutter med et semikolon. Dette skyldes, at enhver erklæring i C # skal slutte med en semikolon, der kommunikerer til C #, at linjen er færdig (den er den samme i Java). Den eneste undtagelse er, når linjen straks følges af et åbent beslag, som vi forklarer et øjeblik.

Tryk på "Start" -knappen øverst på skærmen, og det skal starte appen, så du kan se dette i praksis.

Klasser er kodestykker, der beskriver objekter, der effektivt er datamater

Så hvad sker der nøjagtigt her?

Kom godt i gang med C #: metoder og klasser

For at lære C # programmering til Android skal du forstå klasser og metoder.

Klasser er kodestykker, der beskriver objekter, der effektivt er datamater. Du behøver ikke at bekymre dig for meget om dette til at begynde med: bare ved, at den side med kode, du arbejder med lige nu, kaldes en "klasse", og at du kan interagere med andre klasser i dit projekt. Et projekt kan kun have en klasse, hvor al din kode fungerer derfra, eller det kan have flere.

I hver klasse har du også metoder. Disse metoder er kodestykker, som du kan henvise til når som helst inden for den klasse - og nogle gange uden for den.

I dette tilfælde kaldes klassen Program. Dette defineres øverst ved linjen der lyder: klasse Program. Og hvis du åbner vinduet "Solution Explorer" til højre, vil du være i stand til at finde Program.cs. Navnet på klassen er altid det samme som filnavnet.

Vi bruger derefter et krøllet beslag til at indeholde alle følgende koder. Krøllede parenteser fortæller os, at alt, hvad der følger hører sammen. Indtil konsollen lukkes, er al den følgende kode således en del af Programmet.

Dette efterfølges af vores første metode, der defineres med følgende linje:

statisk tomrum Main (streng args)

Dette efterfølges af mere åbne parenteser, hvilket betyder, at den næste bitkode er en del af “Main” -metoden (som stadig er inden for programklassen). Og det er her, vi har lagt vores ”Hello World”.

"Statisk tomrum" fortæller os i bund og grund, at denne metode gør noget selvstændigt (snarere end at manipulere data, der skal bruges af det bredere program), og at det ikke kan henvises til af eksterne klasser. "Streng args" -spørgsmål tillader os at videregive information til metoden til senere manipulation. Disse kaldes "parametre" og "argumenter". Igen behøver du ikke bekymre dig om noget af det lige nu. Bare ved, at "statisk tomrum" efterfulgt af et ord, parenteser og krøllede parenteser markerer starten på en ny metode.

De næste to linjer er de, vi har tilføjet: de får konsollen og får derefter adgang til dens kommandoer for at skrive til skærmen og vente på et tastetryk.

Endelig lukker vi alle vores parenteser: først metoden, derefter klassen og derefter "navneområdet", som er navnet på det projekt, som klassen hører til (i dette tilfælde "ConsoleApp3" - Jeg har lavet tidligere testapps på denne måde) .

Forvirret? Bare rolig, det er ved at gøre mere fornuftigt.

Brug af metoder

Så metoder er bundter af kode med navne. For at demonstrere, hvorfor vi bruger metoder, kan det være nyttigt at oprette en ny og sætte den i brug som et eksempel.

Så opret en ny metode, der lever inden i programklassen (så den skal være inden for de krøllede parenteser, men uden for de krøllede parenteser, der hører til “Main”).

Kald dette "NewMethod", og sæt derefter de to linjer, du lige har skrevet inde her. Dette skal se sådan ud:

klasse Program {statisk tomrum Main (streng args) {} statisk tomrum NewMethod () {Console.WriteLine ("Hej verden!"); Console.ReadKey (); }}

Tilføj nu en henvisning til NewMethod i din hovedmetode, sådan:

statisk tomrum Main (string args) {ar ​​NewMethod (); }

Dette vil så "kalde" den metode, du lige har oprettet, og i det væsentlige styre programmet i den retning. Tryk på Start, så ser du, at den samme ting sker som før. Bortset fra nu, hvis du ville, kunne du skrive “NewMethod ();” så mange gange, som du ville og fortsat gentage teksten uden at skulle skrive en masse kode.

I løbet af et kæmpe program bliver det utroligt kraftfuldt at være i stand til at henvise til kodestykker som dette. Dette er en af ​​de vigtigste ting at forstå, når du prøver at lære C # -programmering til Android.

Vi kan oprette så mange metoder, som vi kan lide på denne måde, og på den måde har vi et meget pænt og organiseret stykke kode. På samme tid kan vi også henvise til metoder, der er "indbygget" til C # og alle biblioteker, vi måtte bruge. “Main” er et eksempel på en “indbygget” metode. Dette er den metode, som alle programmer vil starte med, og at C # forstår, at den skal udføres først. Hvis du ikke lægger noget herinde, sker der ikke noget!

De argumenter, der er inkluderet i parenteserne i dette tilfælde, er derfor kun nødvendige, fordi det er den måde, Microsoft har designet hovedmetoden. Vi var dog i orden med at lade vores parenteser være tomme.

Brug af variabler

Nu er det på tide at faktisk gøre noget lidt interessant i vores kode. Lad os se nærmere på, hvordan du vil bruge variabler til at gøre programmet mere dynamisk. Dette er en af ​​de vigtigste ting at forstå, hvis du vil lære C # programmering.

En variabel er dybest set en container til et stykke data. Kast dit sind tilbage til highschool matematik, og du kan huske, at du så ting som dette:

10 + x = 13
Find x

Her er “x” en variabel, og den værdi, den repræsenterer, er naturligvis “3”.

Dette er også nøjagtigt, hvordan en variabel fungerer i programmering. Bortset fra her kan en variabel repræsentere mange forskellige typer data: inklusive tekst.

For at oprette en ny variabel skal vi først fortælle C #, hvilken type data den bruges til at indeholde.

Så inden i din NewMethod () -metode opretter du først din variabel, og derefter tildeler du den en værdi. Så vil vi tilføje det til vores "WritLine" -kommando:

int-nummer; antal = 10; Console.WriteLine ("Hej verden!" + Nummer);

Vi har brugt en type variabel kaldet et "heltal", der kan være et hvilket som helst heltal. I C # henviser vi til disse ved hjælp af “int”. Vi kunne imidlertid bare have brugt en "float" for eksempel, som er en "flydende punktvariabel" og giver os mulighed for at bruge decimaler.

Hvis du kører denne kode, skal den nu skrive “Hej verden! 10 ”til skærmen. Og selvfølgelig kan vi til enhver tid ændre værdien af ​​"antal" for at ændre.

Da “nummer” oprettes i NewMethod (), kan vi ikke få adgang til det andetsteds i vores kode. Men hvis vi placerer det uden for alle metoderne, vil det blive tilgængeligt globalt. For at gøre det skal vi sikre os, at variablen dog også er statisk:

klasse Program {statisk int-nummer = 10; statisk tomrum Main (streng args) {NewMethod (); } statisk tomrum NewMethod () {Console.WriteLine ("Hej verden!" + nummer); Console.ReadKey (); }}

Endelig er der endnu en måde, hvorpå vi kan videregive disse data, og det ville være at bruge dem som et argument og derved overføre dem til vores metode. Dette kan se sådan ud:

statisk tomrum Main (streng args) {int nummer = 10; Console.WriteLine ("Hej der, hvad hedder du?"); NewMethod (antal); } statisk tomrum NewMethod (int-nummer) {Console.WriteLine ("Hej verden!" + nummer); Console.ReadKey (); }}

Her definerer vi vores NewMethod-metode som behov for ét argument, der skal være et heltal, og som i metoden vil blive omtalt som ”nummer”. Vi gør dette ved blot at tilføje disse oplysninger til de krøllede parenteser. Når vi derefter kalder metoden fra et andet sted i programmet, er vi nødt til at "videregive" denne værdi inden for parenteserne. Du kan oprette metoder med flere parametre, i hvilket tilfælde du bare adskiller de anførte variabler med kommaer.

Der er forskellige scenarier, hvor det vil være hensigtsmæssigt at bruge alle disse forskellige strategier til at jonglere data. God programmering betyder, at du finder den rigtige til jobbet!

At videregive argumenter og bruge strenge

Prøv at køre dette næste stykke kode, og se hvad der sker:

klasse Program {statisk tomrum Main (string args) {Console.WriteLine ("Hej der, hvad hedder du?"); NewMethod (Console.ReadLine ()); } statisk tomrum NewMethod (String UserName) {Console.WriteLine ("Hej" + Brugernavn); Console.ReadKey (); }}

Du skulle opdage, at du bliver bedt om at indtaste dit navn, og at konsollen derefter gribe dig ud af det. Dette enkle stykke kode indeholder et antal nyttige lektioner.

Først ser vi et eksempel på, hvordan man bruger en anden type variabel, kaldet en streng. En streng er en række karakterer, der kan være et navn eller kan være en hel historie.

Så du kunne lige så let skrive Brugernavn = "Adam". Men i stedet får vi strengen fra konsollen med sætningen: Console.ReadLine ().

Vi kunne have skrevet:

Streng bruger; Bruger = Console.ReadLine (); NewMethod (Bruger);

Men for at holde vores kode så pæn som muligt, har vi sprunget over disse trin og placeret "ReadLine" direkte inden i parenteserne.

Vi videresender derefter den streng til vores NewMethod, og vi hilser brugeren ved hjælp af den metode, du allerede er bekendt med.

En streng er en række karakterer, der kan være et navn eller kan være en hel historie.

Forhåbentlig begynder du nu at forstå lidt om, hvorfor C # er skrevet som det er, og hvordan du kan bruge ting som variabler og metoder for at skabe en smidig og kraftfuld software.

Men der er et mere vigtigt aspekt, du skal vide, hvis du vil lære C # programmering: flowkontrol.

Lær C # flowkontrol og opbyg enkle quizzer!

En af grundene til, at vi bruger variabler ved kodning, er, at vi let kan redigere vores programmer efterfølgende. En anden er, så du kan få oplysninger fra brugeren eller generere dem tilfældigt.

Men måske er den bedste grund til at lære C # -variabler, så dine programmer kan blive dynamiske: så de kan reagere forskelligt afhængigt af hvordan de bruges.

Til dette formål har vi brug for "flowkontrol" eller "betingede udsagn". Dette er virkelig bare smarte måder at sige, at vi vil udføre kode på mere end en måde, afhængigt af værdien af ​​en variabel.

Og en af ​​de mest magtfulde måder at gøre det på er med en "if" -sætning. Lad os i dette eksempel hilse vores hovedbruger anderledes end de andre ved at kigge efter deres brugernavn.

statisk tomrum NewMethod (String UserName) {Console.WriteLine ("Hej" + Brugernavn); if (UserName.Equals ("Adam")) {Console.WriteLine ("Velkommen tilbage sir"); } Konsol.ReadKey (); }

"Hvis" -angivelser fungerer ved at teste gyldigheden af ​​en erklæring, der vil gå inden i parentes. I dette tilfælde spørger vi, om strengen Brugernavn er den samme som strengen "Adam". Hvis udsagnet i parenteserne er sandt - de to strenge er de samme - udføres koden i de følgende krøllede parenteser. Hvis det ikke er det, springes disse linjer over.

På samme måde kan vi sammenligne heltal og flydende, og vi kan teste for at se, om den ene er større end den anden osv. Vi kan endda bruge flere forskellige, hvis udsagn inde i hinanden som russiske dukker. Vi kalder disse "indlejrede ifs".

Næste gang

Der er mange flere strategier, du kan bruge til flowkontrol - inklusive ting som switch-udsagn. Forhåbentlig kan du allerede se, hvordan vi kan bruge disse udsagn og teknikker til at begynde at gøre nogle nyttige ting. Du kan nemt forvandle denne kode til en quiz allerede!

Til sidst vil C # med værktøjer som Unity give dig mulighed for at bygge fuldt funktionelle spil!

Men for virkelig at lave imponerende værktøjer og spil, er der et par flere ting, vi skal udforske. Så overraskelse! Der kommer til at være en del to!

I den næste lektion vil du opdage, hvordan man opretter løkker, der itererer over tid, samt hvordan man opretter nye klasser og interagerer med dem. Vi ses!

Apple var ikke den førte telefonproducent, der implementerede bevægelenavigation på ine telefoner, men man kunne hævde, at virkomheden tartede den fejende trend tilbage i 2017. Nu ...

Hvi du klør efter en ny karriere, job til profeionelle netværk er altid tilgængelige. At have en certificering til branchen førende inden for virkomhednetværk, Cico, kan hurti...

Fascinerende Stillinger.