Mojo Academy · leksjon

Et første blikk på mutasjon

Endre data uten å ødelegge annen kode.

Leksjon 4 av 413 trinn

Et første blikk på mutasjon er en gratis leksjon i Mojo Academy på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Mojo Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Mojo Academy inneholder totalt 4 leksjoner.

Endre data med hensikt

Uavhengige kopier er nyttige, men virkelige programmer må endre data: oppdatere en poengsum eller utvide en liste. La oss gjøre det på en trygg måte. ✏️

Endre din egen var

Den enkleste endringen er å tilordne en ny verdi til en var du eier. Siden det er din kopi, påvirker endringen bare verdien din.

var score = 10
score = score + 5

Lokale endringer er uten bieffekter

Redigering av en lokal variabel kan ikke lekke ut. Andre variabler beholder verdiene sine, så endringen får ingen overraskende bivirkninger.

var a = 1
var b = a
a = 100

Funksjoner får kopier som standard

Når De sender en verdi til en funksjon, redigerer den en kopi. Den opprinnelige verdien utenfor funksjonen forblir urørt.

fn bump(n: Int) -> Int:
    return n + 1

Men noen ganger ønsker De en reell endring

Hva om en funksjon skal oppdatere verdien hos den som kaller den, direkte? Mojo lar Dem velge dette med inout-konvensjonen.

inout betyr endring direkte i verdien

Merk et argument med inout, så arbeider funksjonen med den faktiske verdien hos den som kaller den. Dermed blir endringene virkelig beholdt.

fn double(inout n: Int):
    n = n * 2

Mutasjon er eksplisitt, ikke tilfeldig

Legg merke til at De måtte skrive inout med hensikt. Mojo endrer aldri verdien hos den som kaller funksjonen uten at De ber om det; De velger det alltid aktivt.

Signaturen forteller Dem hva som skjer

Funksjonssignaturen viser hensikten. Ser De inout, vet De at verdien kan endres; ellers kan De forvente en sikker kopi.

Kalle en inout-funksjon

Kall den med variabelen Deres, og se at verdien oppdateres akkurat der den ligger. Funksjonen fikk tilgang til den opprinnelige verdien, med hensikt.

var n = 4
double(n)
print(n)

En balansert tilnærming

Mojo kombinerer begge deler: sikre kopier som standard og bevisst mutasjon når De ber om det. De får både sikkerhet og fleksibilitet.

Hva skjer videre

Dette er bare en første introduksjon. Senere møter De owned og overføringsoperatoren, som gir full kontroll over hvordan data flyttes. 🚀

Rask kontroll

De ønsker at en funksjon skal endre den faktiske verdien hos den som kaller den, ikke en kopi. Hva bruker De?

Oppsummering

Det er trygt og lokalt å endre Deres egen variabel. Hvis De vil endre verdien hos den som kaller funksjonen, velger De inout; ingenting endres ved et uhell. 🎯

Gratis å komme i gang

Lær deg Mojo med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
30
Leksjoner
120

Ofte stilte spørsmål

Er leksjonen «Et første blikk på mutasjon» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Mojo Academy, inkludert «Et første blikk på mutasjon», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Mojo Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Et første blikk på mutasjon»?

Endre data uten å ødelegge annen kode. Du øver på Mojo Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Mojo Academy?

Ingen tidligere erfaring er nødvendig. Mojo Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.

Hvor lang tid tar leksjonen «Et første blikk på mutasjon»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Mojo Academy-leksjonen?

Ja. Alle Mojo Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Hva verdisemantikk betyr
  2. Kopier kontra delt tilstand
  3. Mojos trygge standard
  4. Et første blikk på mutasjon
← Tilbake til Mojo Academy