Lektion 2

Gaskosten verstehen

Willkommen zurück! Nachdem Sie nun über ein grundlegendes Verständnis von Gas verfügen und mit einem grundlegenden Smart Contract interagiert haben, ist es an der Zeit, tiefer in die Feinheiten der Gaskosten einzutauchen. Diese Lektion führt Sie durch die grundlegenden Gasoperationen in Ethereum und zeigt Ihnen, wie Sie die Gaskosten der Operationen innerhalb der Remix-IDE ermitteln.

Grundlegende Ethereum-Operationen und Gaskosten

Betriebskosten

In Ethereum sind mit jedem Vorgang Gaskosten verbunden. Zu den typischen Kosten gehören:

  • Grundkosten: Grundoperationen wie das Hinzufügen oder Festlegen einer Variablen.
  • Speicherkosten: Speichern oder Abrufen von Daten im Speicher.
  • Speicherkosten: Interaktion mit dem Ethereum-Status (z. B. Aktualisierung des Vertragsspeichers) – normalerweise am teuersten.

Es ist wichtig, diese zu verstehen, da viele Gasoptimierungstechniken den Austausch teurerer Vorgänge gegen billigere erfordern.

Ermittlung der Gaskosten in Remix

Mit Remix wird es wesentlich einfacher, den Gasverbrauch für den Betrieb unseres Vertrags zu ermitteln.

Verfahren

  1. Statische Analyse: Navigieren Sie in Remix zur Registerkarte Analysis (dargestellt durch ein Mikroskopsymbol). Dieses leistungsstarke Tool bietet Einblicke in potenzielle Fallstricke und Optimierungsmöglichkeiten in Ihrem Code.

  2. Bereitstellen und interagieren: Nach der Bereitstellung Ihres Vertrags (wie in Lektion 1) wird bei jeder Interaktion eine Gasschätzung angezeigt. Wenn Sie eine Funktion aufrufen, wird das verwendete Gas im unteren rechten Bereich angezeigt.

  3. Detailbereich: Klicken Sie beim Bereitstellen oder Interagieren mit einer Funktion auf den Abwärtspfeil im Transaktionsprotokoll (unten rechts). Dadurch wird das Protokoll erweitert und die detaillierten Gaskosten für die Transaktion angezeigt.

Übung: Identifizieren schwerer Gaseinsätze

Lassen Sie uns einen Beispielvertrag und seine Funktionsweise bewerten:

Solidity 
 // SPDX-License-Identifier: GPL-3.0 
 Pragma Solidity ^0.8.9; 

 Vertrag GasDemo { 
 uint256 public count; 
 Mapping(address => uint256) öffentliche Guthaben; 

 Funktion increment() public {
        count += 1;
    }

    Funktion updateBalance(uint256 newBalance) public {
        balances[msg.sender] = newBalance;
    }
}
  1. Stellen Sie den GasDemo Vertrag über Remix im Goerli Testnet bereit.

  2. Interagieren Sie einige Male mit der increment .

  3. Überprüfen Sie das verwendete Gas in den Transaktionsdetails.

  4. Interagieren Sie nun mit der updateBalance Funktion und legen Sie verschiedene Salden fest.

  5. Überprüfen Sie erneut das verwendete Gas.

Reflektieren über:

  • Welche Funktion verbraucht mehr Gas und warum? (Tipp: Sie haben den geschätzten Gasverbrauch neben jeder Funktion angezeigt.)
  • Wie lässt sich die Aktualisierung der Zuordnung in Bezug auf Gas mit der Erhöhung eines einfachen Zählers vergleichen?

Zusammenfassung und Vorbereitung auf die nächste Lektion

Sie haben gerade Ihr Verständnis der Gas-Feinheiten in Ethereum-Smart-Contracts vertieft. Durch das Üben mit Remix können Sie visualisieren und verstehen, wie sich verschiedene Vorgänge auf die Gesamtsumme einer Transaktion auswirken. In unserer nächsten Lektion beschäftigen wir uns mit Optimierungstechniken, in denen Sie lernen, wie Sie Ihre Verträge gaseffizienter gestalten.

Bleiben Sie neugierig und experimentieren Sie weiter!

Haftungsausschluss
* Kryptoinvestitionen sind mit erheblichen Risiken verbunden. Bitte lassen Sie Vorsicht walten. Der Kurs ist nicht als Anlageberatung gedacht.
* Der Kurs wird von dem Autor erstellt, der Gate Learn beigetreten ist. Vom Autor geteilte Meinungen spiegeln nicht zwangsläufig die Meinung von Gate Learn wider.
Katalog
Lektion 2

Gaskosten verstehen

Willkommen zurück! Nachdem Sie nun über ein grundlegendes Verständnis von Gas verfügen und mit einem grundlegenden Smart Contract interagiert haben, ist es an der Zeit, tiefer in die Feinheiten der Gaskosten einzutauchen. Diese Lektion führt Sie durch die grundlegenden Gasoperationen in Ethereum und zeigt Ihnen, wie Sie die Gaskosten der Operationen innerhalb der Remix-IDE ermitteln.

Grundlegende Ethereum-Operationen und Gaskosten

Betriebskosten

In Ethereum sind mit jedem Vorgang Gaskosten verbunden. Zu den typischen Kosten gehören:

  • Grundkosten: Grundoperationen wie das Hinzufügen oder Festlegen einer Variablen.
  • Speicherkosten: Speichern oder Abrufen von Daten im Speicher.
  • Speicherkosten: Interaktion mit dem Ethereum-Status (z. B. Aktualisierung des Vertragsspeichers) – normalerweise am teuersten.

Es ist wichtig, diese zu verstehen, da viele Gasoptimierungstechniken den Austausch teurerer Vorgänge gegen billigere erfordern.

Ermittlung der Gaskosten in Remix

Mit Remix wird es wesentlich einfacher, den Gasverbrauch für den Betrieb unseres Vertrags zu ermitteln.

Verfahren

  1. Statische Analyse: Navigieren Sie in Remix zur Registerkarte Analysis (dargestellt durch ein Mikroskopsymbol). Dieses leistungsstarke Tool bietet Einblicke in potenzielle Fallstricke und Optimierungsmöglichkeiten in Ihrem Code.

  2. Bereitstellen und interagieren: Nach der Bereitstellung Ihres Vertrags (wie in Lektion 1) wird bei jeder Interaktion eine Gasschätzung angezeigt. Wenn Sie eine Funktion aufrufen, wird das verwendete Gas im unteren rechten Bereich angezeigt.

  3. Detailbereich: Klicken Sie beim Bereitstellen oder Interagieren mit einer Funktion auf den Abwärtspfeil im Transaktionsprotokoll (unten rechts). Dadurch wird das Protokoll erweitert und die detaillierten Gaskosten für die Transaktion angezeigt.

Übung: Identifizieren schwerer Gaseinsätze

Lassen Sie uns einen Beispielvertrag und seine Funktionsweise bewerten:

Solidity 
 // SPDX-License-Identifier: GPL-3.0 
 Pragma Solidity ^0.8.9; 

 Vertrag GasDemo { 
 uint256 public count; 
 Mapping(address => uint256) öffentliche Guthaben; 

 Funktion increment() public {
        count += 1;
    }

    Funktion updateBalance(uint256 newBalance) public {
        balances[msg.sender] = newBalance;
    }
}
  1. Stellen Sie den GasDemo Vertrag über Remix im Goerli Testnet bereit.

  2. Interagieren Sie einige Male mit der increment .

  3. Überprüfen Sie das verwendete Gas in den Transaktionsdetails.

  4. Interagieren Sie nun mit der updateBalance Funktion und legen Sie verschiedene Salden fest.

  5. Überprüfen Sie erneut das verwendete Gas.

Reflektieren über:

  • Welche Funktion verbraucht mehr Gas und warum? (Tipp: Sie haben den geschätzten Gasverbrauch neben jeder Funktion angezeigt.)
  • Wie lässt sich die Aktualisierung der Zuordnung in Bezug auf Gas mit der Erhöhung eines einfachen Zählers vergleichen?

Zusammenfassung und Vorbereitung auf die nächste Lektion

Sie haben gerade Ihr Verständnis der Gas-Feinheiten in Ethereum-Smart-Contracts vertieft. Durch das Üben mit Remix können Sie visualisieren und verstehen, wie sich verschiedene Vorgänge auf die Gesamtsumme einer Transaktion auswirken. In unserer nächsten Lektion beschäftigen wir uns mit Optimierungstechniken, in denen Sie lernen, wie Sie Ihre Verträge gaseffizienter gestalten.

Bleiben Sie neugierig und experimentieren Sie weiter!

Haftungsausschluss
* Kryptoinvestitionen sind mit erheblichen Risiken verbunden. Bitte lassen Sie Vorsicht walten. Der Kurs ist nicht als Anlageberatung gedacht.
* Der Kurs wird von dem Autor erstellt, der Gate Learn beigetreten ist. Vom Autor geteilte Meinungen spiegeln nicht zwangsläufig die Meinung von Gate Learn wider.