Grundlæggende udvikling af Web3- og DApp-programmer · Lektion

Deployment og interaktion

Øv Dem i at deploye kompilerede smart contracts til et simuleret blockchainmiljø og interagere med deres funktioner via Remix-brugerfladen.

Lektion 3 af 312 trin

Deployment og interaktion er en gratis Grundlæggende udvikling af Web3- og DApp-programmer-lektion på CoddyKit. Dette er lektion 3 af 3. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Grundlæggende udvikling af Web3- og DApp-programmer, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Grundlæggende udvikling af Web3- og DApp-programmer-kurset indeholder 3 lektioner i alt.

Hvad er implementering af en smart kontrakt?

Du har lært at skrive og kompilere smarte kontrakter i Remix. Det næste trin er at implementere dem.

At implementere en kontrakt betyder at offentliggøre dens kompilerede kode på en blockchain. Når kontrakten er implementeret, bliver den et uforanderligt, selvudførende program, som alle på netværket kan få adgang til.

Remix' panel til implementering og kørsel

Remix IDE har et dedikeret panel til implementering og interaktion. Find plugin'et 'Deploy & Run transactions', som normalt vises med et Ethereum-logo.

Dette panel giver dig mulighed for at:

  • Vælge et blockchainmiljø.
  • Vælge en konto til implementeringen.
  • Implementere dine kompilerede kontrakter.
  • Interagere med implementerede kontrakter.

Valg af blockchainmiljø

Før du implementerer, skal du fortælle Remix, hvilken blockchain der skal bruges. I rullemenuen 'Environment' kan du se følgende muligheder:

  • JavaScript VM: En lokal, simuleret blockchain i browseren. Perfekt til test!
  • Injected Provider: Opretter forbindelse til en ekstern wallet som MetaMask.
  • Web3 Provider: Opretter forbindelse til et brugerdefineret RPC-endpoint, f.eks. en lokal Hardhat-node.

I denne lektion bruger vi JavaScript VM.

Testkonti i JavaScript VM

Når du vælger 'JavaScript VM', stiller Remix automatisk flere testkonti til rådighed. Disse konti er på forhånd forsynet med falsk Ether (ETH).

Du bruger en af disse konti til at implementere din kontrakt. Implementeringstransaktionen trækker 'gas' (transaktionsgebyrer) fra den valgte kontos saldo, ligesom på en rigtig blockchain.

Gasgrænse og værdi

I panelet 'Deploy & Run' kan du også se felterne 'Gas limit' og 'Value'.

  • Gasgrænse: Den maksimale mængde gas (beregningsarbejde), du er villig til at bruge på en transaktion.
  • Værdi: Den mængde Ether (eller et andet indfødt token), du vil sende sammen med transaktionen, f.eks. til payable-funktioner eller til at sende midler til en kontrakt.

Ved de fleste simple implementeringer er standardgasgrænsen tilstrækkelig. Vi lader 'Value' stå på 0 indtil videre.

Vores simple Counter-kontrakt

Lad os bruge en grundlæggende Counter-kontrakt til at øve implementering og interaktion. Denne kontrakt gemmer blot et heltal uden fortegn og giver os mulighed for at øge eller formindske det.

Kopiér og indsæt denne kode i en ny fil med navnet Counter.sol i Remix, og kompilér den derefter.

pragma solidity ^0.8.0;

contract Counter {
    uint public count;

    constructor() {
        count = 0;
    }

    function increment() public {
        count++;
    }

    function decrement() public {
        count--;
    }
}

Implementering af Counter-kontrakten

Når Counter.sol er kompileret, og 'JavaScript VM' er valgt:

  1. Sørg for, at Counter er valgt i rullemenuen 'CONTRACT'.
  2. Klik på den orange 'Deploy'-knap.

Du kan se en registreret transaktion i Remix-terminalen, og din implementerede kontrakt vises under 'Deployed Contracts'.

Interaktion med implementerede kontrakter

Når kontrakten er implementeret, vises den under sektionen 'Deployed Contracts' i panelet 'Deploy & Run'.

Du kan se knapper for hver af kontraktens funktioner og offentlige tilstandsvariabler. Knapperne er farvekodede:

  • Blå: View-/pure-funktioner (skrivebeskyttede, uden transaktionsomkostning).
  • Orange: Ikke-betalbare funktioner (ændrer tilstanden og kræver en transaktion).
  • Rød: Betalbare funktioner (ændrer tilstanden og accepterer Ether).

Læsning af kontrakttilstanden: 'count'

Vores Counter-kontrakt har en offentlig tilstandsvariabel kaldet count. Når en tilstandsvariabel erklæres som public, opretter Solidity automatisk en getter-funktion til den.

Klik på den blå 'count'-knap i den implementerede kontrakts grænseflade. Du bør se dens startværdi, 0, vist under knappen.

Ændring af kontrakttilstanden: 'increment()'

Lad os nu ændre kontraktens tilstand. Klik på den orange 'increment'-knap.

Dette udløser en transaktion. Du kan se en ny transaktion i terminalen. Når den er mined (næsten øjeblikkeligt i JS VM), skal du klikke på den blå 'count'-knap igen. Værdien bør nu være 1!

Prøv også at klikke på 'decrement', og se ændringen.

Hurtigt tjek: Remix-implementering

Hvilken af følgende beskriver bedst det primære formål med miljøet 'JavaScript VM' i Remix?

Opsummering: Implementering og interaktion

Tillykke! Du har lært de vigtigste trin til at implementere og interagere med smarte kontrakter ved hjælp af Remix IDE:

  • Brugt panelet 'Deploy & Run transactions'.
  • Valgt 'JavaScript VM' som simuleret miljø.
  • Implementeret en simpel Counter-kontrakt.
  • Interageret med dens offentlige variabel og funktioner for at læse og ændre dens tilstand.

Denne praktiske erfaring er afgørende for at forstå, hvordan smarte kontrakter fungerer og eksisterer på blockchainen!

Gratis at komme i gang

Lær Grundlæggende udvikling af Web3- og DApp-programmer 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
29
Lektioner
105

Ofte stillede spørgsmål

Er lektionen “Deployment og interaktion” gratis?

Ja — alle 3 lektioner i læringssporet Grundlæggende udvikling af Web3- og DApp-programmer, inklusive “Deployment og interaktion”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Grundlæggende udvikling af Web3- og DApp-programmer-kurset indeholder 3 lektioner i alt.

Hvad lærer jeg i “Deployment og interaktion”?

Øv Dem i at deploye kompilerede smart contracts til et simuleret blockchainmiljø og interagere med deres funktioner via Remix-brugerfladen. Du øver dig i Grundlæggende udvikling af Web3- og DApp-programmer 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å Grundlæggende udvikling af Web3- og DApp-programmer?

Der kræves ingen tidligere erfaring. Grundlæggende udvikling af Web3- og DApp-programmer 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 3 af 3.

Hvor lang tid tager lektionen “Deployment og interaktion”?

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 Grundlæggende udvikling af Web3- og DApp-programmer-lektion?

Ja. Alle Grundlæggende udvikling af Web3- og DApp-programmer-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. Oversigt over Remix IDE
  2. Kompilering af smart contracts
  3. Deployment og interaktion
← Tilbage til Grundlæggende udvikling af Web3- og DApp-programmer