Scala til backendudvikling og funktionel programmering · Lektion

Brug af REPL

Interaktiv Scala

Lektion 1 af 413 trin

Brug af REPL er en gratis Scala til backendudvikling og funktionel programmering-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Scala til backendudvikling og funktionel programmering, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Scala til backendudvikling og funktionel programmering-kurset indeholder 4 lektioner i alt.

Hvad er REPL?

REPL står for Read-Eval-Print Loop. Det er en interaktiv skal, hvor du skriver Scala-udtryk og straks ser deres resultater.

Du starter den ved at køre scala (eller scala-cli repl) i din terminal. Det er den hurtigste måde at eksperimentere med sproget på uden at skrive et helt program.

Dit første udtryk

Skriv et vilkårligt udtryk, og tryk på Enter. REPL evaluerer det og udskriver resultatet, dets type og et genereret navn.

Hvis du for eksempel skriver 1 + 1, vises noget i stil med val res0: Int = 2.

object Main {
  def main(args: Array[String]): Unit = {
    println(1 + 1)
  }
}

res-variabler

Hvert resultat, du beregner, gemmes automatisk i en variabel med navnet resN (res0, res1, ...).

Du kan genbruge disse navne i senere udtryk, så REPL føles som en lommeregner, der kører.

object Main {
  def main(args: Array[String]): Unit = {
    val res0 = 2 + 3
    val res1 = res0 * 10
    println(res1)
  }
}

Typeoplysninger

En af de mest nyttige funktioner er, at REPL fortæller dig typen for hvert resultat.

Hvis du skriver "hello", udskrives val res0: String = hello. Det hjælper dig med at lære, hvad Scala udleder for ethvert udtryk.

object Main {
  def main(args: Array[String]): Unit = {
    val greeting = "hello"
    println(greeting)
  }
}

Definition af værdier

Du kan definere navngivne værdier i REPL ved hjælp af val. De bevares resten af sessionen.

Når de først er defineret, kan du referere til dem på enhver senere linje.

object Main {
  def main(args: Array[String]): Unit = {
    val pi = 3.14159
    val radius = 2.0
    println(pi * radius * radius)
  }
}

Definition af funktioner

Du er ikke begrænset til enkeltlinjer. Du kan definere funktioner direkte i REPL og kalde dem med det samme.

Det giver dig mulighed for at opbygge små hjælpefunktioner og teste dem med det samme.

object Main {
  def square(x: Int): Int = x * x
  def main(args: Array[String]): Unit = {
    println(square(5))
  }
}

Input over flere linjer

Hvis du skriver noget ufuldstændigt (for eksempel en åben klammeparentes), viser REPL en fortsættelsesprompt og venter på resten.

Det betyder, at du naturligt kan indsætte eller skrive definitioner over flere linjer, uden at REPL forsøger at evaluere for tidligt.

object Main {
  def main(args: Array[String]): Unit = {
    val total =
      1 +
      2 +
      3
    println(total)
  }
}

Import i REPL

Du kan bruge import til hvad som helst i REPL, ligesom i en fil. Det er praktisk, når du vil hente hjælpefunktioner fra standardbiblioteket.

For eksempel giver import scala.math.* dig sqrt, abs og meget mere.

import scala.math.sqrt
object Main {
  def main(args: Array[String]): Unit = {
    println(sqrt(16.0))
  }
}

Nyttige REPL-kommandoer

REPL har særlige kommandoer, der begynder med et kolon:

  • :help viser alle kommandoer
  • :reset rydder din session
  • :quit afslutter REPL
  • :type expr viser typen af et udtryk uden at køre det

Hvorfor bruge REPL?

REPL er perfekt til:

  • Hurtigt at afprøve en ukendt API
  • At kontrollere, hvilken type et udtryk giver
  • At lave en prototype af logik, før den føjes til et projekt
  • At lære sproget interaktivt

Kombination af det hele

I én session kan du definere værdier, skrive funktioner, importere biblioteker og kæde resultater sammen. REPL holder det hele inden for samme synlighedsområde.

Her er et lille eksempel, som du kan opbygge linje for linje.

object Main {
  def celsiusToF(c: Double): Double = c * 9 / 5 + 32
  def main(args: Array[String]): Unit = {
    val temps = List(0.0, 25.0, 100.0)
    println(temps.map(celsiusToF))
  }
}

Hurtig kontrol

Test din forståelse af Scala REPL.

Opsummering

Du har lært, at REPL er en interaktiv Read-Eval-Print Loop til Scala.

  • Den udskriver værdien, typen og et automatisk resN-navn for hvert resultat
  • Du kan definere val-er og funktioner, som bevares i sessionen
  • Du kan bruge import til at importere biblioteker og skrive input over flere linjer
  • Kommandoer som :type, :reset og :quit styrer sessionen
Gratis at komme i gang

Lær Scala med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
39
Lektioner
143

Ofte stillede spørgsmål

Er lektionen “Brug af REPL” gratis?

Ja — hele teksten til “Brug af REPL” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Scala til backendudvikling og funktionel programmering-kurset, skal du opgradere til CoddyKit PRO. Scala til backendudvikling og funktionel programmering-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Brug af REPL”?

Interaktiv Scala Du øver dig i Scala til backendudvikling og funktionel programmering med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Scala til backendudvikling og funktionel programmering?

Der kræves ingen tidligere erfaring. Scala til backendudvikling og funktionel programmering på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Brug af REPL”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Scala til backendudvikling og funktionel programmering-lektion?

Ja. Alle Scala til backendudvikling og funktionel programmering-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Brug af REPL
  2. val, var og typer
  3. Udtryk frem for statements
  4. String interpolation
← Tilbage til Scala til backendudvikling og funktionel programmering