Kotlin Multiplatform Academy · leksjon

Forretningsregler som rene funksjoner

Gjør logikken testbar ved å unngå bivirkninger fra plattformen

Leksjon 3 av 413 trinn

Forretningsregler som rene funksjoner er en gratis leksjon i Kotlin Multiplatform Academy på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Kotlin Multiplatform Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Kotlin Multiplatform Academy inneholder totalt 4 leksjoner.

Hva er en ren funksjon

En ren funksjon returnerer samme resultat for samme input og påvirker ingenting utenfor seg selv. Det gjør den perfekt for delt kode.

Ingen skjulte bivirkninger

Ren betyr ingen logging, ingen nettverkstrafikk og ingen lagring på disk. Funksjonen tar bare inn verdier og returnerer et resultat.

fun shippingFee(weight: Double): Double = if (weight > 5) 9.0 else 4.0

Hvorfor renhet vinner i KMP

Rene funksjoner har ingen plattformavhengigheter, så de kompileres og oppfører seg identisk på Android, iOS og desktop. 🎯

Enkelt å teste

Uten skjult tilstand er en test ganske enkelt input inn og kontroll av forventet output. Ingen mocks, ingen oppsett og ingen ustabile overraskelser.

assertEquals(9.0, shippingFee(6.0))

Regler som små funksjoner

Uttrykk hver forretningsregel som sin egen lille funksjon. Små deler kan settes sammen til større logikk uten å vikle seg inn i hverandre.

fun isFreeShipping(total: Double) = total >= 50.0

Sett sammen reglene

Kombiner små regler for å ta beslutninger. Hver del forblir ren, slik at hele sammensetningen forblir forutsigbar og enkel å teste.

fun finalShipping(total: Double, weight: Double) =
  if (isFreeShipping(total)) 0.0 else shippingFee(weight)

Send tid som en parameter

Å lese klokken gjør en funksjon uren. Send i stedet gjeldende tid inn, slik at regelen forblir deterministisk.

fun isPeakHour(hour: Int): Boolean = hour in 17..20

Unngå global muterbar tilstand

Å lese eller endre en global variabel bryter renheten. Hold alle dataene en regel trenger, i parameterne dens.

Returner verdier, ikke mutasjoner

I stedet for å redigere inputen, returnerer du en ny verdi. Da unngår du overraskelser når det samme objektet brukes et annet sted.

fun withDiscount(price: Double, off: Double) = price * (1 - off)

Ren logikk, urene ytterkanter

Hold reglene rene i kjernen, og la appens ytterkanter håndtere effekter som lagring eller visning av resultater.

Logikken driver aldri fra hverandre

Fordi rene regler finnes ett sted i delt kode, oppdaterer en endring begge appene samtidig. Forretningslogikken kan aldri drive fra hverandre igjen.

Hurtigsjekk

Hvilken egenskap gjør en funksjon ren og ideell for delt KMP-kode?

Oppsummering: Hold det rent

Du skrev forretningsregler som små, bivirkningsfrie funksjoner som er enkle å teste og kjører likt på alle målplattformer. ✅

Gratis å komme i gang

Lær deg Kotlin 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 «Forretningsregler som rene funksjoner» gratis?

Ja – hele teksten i «Forretningsregler som rene funksjoner» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Kotlin Multiplatform Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Kotlin Multiplatform Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Forretningsregler som rene funksjoner»?

Gjør logikken testbar ved å unngå bivirkninger fra plattformen Du øver på Kotlin Multiplatform 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 Kotlin Multiplatform Academy?

Ingen tidligere erfaring er nødvendig. Kotlin Multiplatform 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 3 av 4.

Hvor lang tid tar leksjonen «Forretningsregler som rene funksjoner»?

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 Kotlin Multiplatform Academy-leksjonen?

Ja. Alle Kotlin Multiplatform 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. En delt pris- og avgiftskalkulator
  2. Formatere valuta og tall
  3. Forretningsregler som rene funksjoner
  4. Hold brukergrensesnittet ute av delt kode
← Tilbake til Kotlin Multiplatform Academy