Dart Academy · Lektion

Kodgenerering med build_runner

Generera standardkod från annotationer

Lektion 3 av 413 steg

Kodgenerering med build_runner är en gratis lektion i Dart Academy på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Dart Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Dart Academy innehåller totalt 4 lektioner.

Varför generera kod?

Viss kod är upprepad standardkod, till exempel JSON-parsning. Code generation skriver den åt er utifrån annoteringar, så att ni kan arbeta korrekt och snabbt. ⚙️

Lär känna build_runner

build_runner är Darts verktyg för att köra kodgeneratorer i projektet. Det läser källfiler, hittar annoteringar och skapar nya filer.

Ett utvecklingsberoende

Du lägger till build_runner under dev_dependencies i pubspec.yaml eftersom det körs vid byggtillfället och aldrig skickas med din app.

dev_dependencies:
  build_runner: ^2.4.0

Den genererade part-filen

Generatorer skriver till en fil bredvid källfilen. Du länkar till den med ett part-direktiv vars namn enligt konvention slutar på .g.dart.

part 'user.g.dart';

Kör bygget

Starta en engångsgenerering med kommandot build. Det genomsöker din kod och skapar eller uppdaterar alla .g.dart-filer.

dart run build_runner build

Övervakningsläge

Under utvecklingen återskapar läget watch automatiskt filerna varje gång du sparar. Det håller de genererade filerna synkroniserade utan manuella omkörningar.

dart run build_runner watch

Hantera inaktuella konflikter

Om utdata krockar med gamla filer lägger du till --delete-conflicting-outputs. Det rensar inaktuella genererade filer så att det nya bygget kan lyckas.

dart run build_runner build --delete-conflicting-outputs

Anteckningar styr processen

Generatorer arbetar bara med deklarationer som du annotate. Anteckningen talar om för byggverktyget vilken klass som ska behandlas och vilken kod som ska skapas.

Redigera inte genererade filer

Behandla alla .g.dart-filer som read-only. Nästa bygge skriver över dina ändringar, så redigera källan och anteckningarna i stället.

Checka in eller ignorera

Team väljer antingen att checka in genererade filer eller lägga till dem i .gitignore och bygga om i CI. Oavsett vilket bör ni välja en strategi och följa den konsekvent.

Ett bredare ekosystem

Många paket ansluter till build_runner, till exempel json_serializable och freezed. De delar en gemensam builder-pipeline, så ett enda kommando kör dem alla.

Snabbkontroll

Vilket kommando återskapar koden vid varje filsparning?

Sammanfattning

build_runner omvandlar anteckningar till genererade .g.dart-filer. Lägg till det i dev_dependencies, kör build eller watch och redigera aldrig utdatafilerna. 🎉

Gratis att börja

Lär dig Dart med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Kodgenerering med build_runner” gratis?

Ja – hela texten till ”Kodgenerering med build_runner” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Dart Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Dart Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Kodgenerering med build_runner”?

Generera standardkod från annotationer Ni övar på Dart Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Dart Academy?

Du behöver inga förkunskaper. Utbildningen i Dart Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.

Hur lång tid tar lektionen ”Kodgenerering med build_runner”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Dart Academy-lektionen?

Ja. Varje Dart Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Inbyggda annotationer: override, deprecated
  2. Skriva anpassade annotationer
  3. Kodgenerering med build_runner
  4. json_serializable i praktiken
← Tillbaka till Dart Academy