Lektion 2

Solidity Smart Contract-Grundlagen

Willkommen zu Lektion 2! Heute tauchen wir in die faszinierende Welt der Solidity-Programmierung und der Erstellung intelligenter Verträge ein. Wir werden die grundlegende Syntax von Solidity, Datentypen, Variablen und Funktionen untersuchen. Darüber hinaus werden wir unseren ersten einfachen Smart Contract schreiben und ihn mithilfe von TronIDE und unserem TronLink-Wallet im Nile Testnet bereitstellen. Lasst uns gleich einsteigen!

Einführung in die Programmiersprache Solidity für Smart Contracts

Solidity ist die wichtigste Programmiersprache für die Erstellung intelligenter Verträge auf Tron und anderen Ethereum-basierten Blockchains. Die Syntax von Solidity ähnelt der von JavaScript, was das Erlernen für Personen mit JavaScript-Hintergrund erleichtert.

Aktivität 1: Verbringen Sie etwa 20 Minuten damit, die Solidity-Dokumentation durchzugehen (https://docs.soliditylang.org/). Notieren Sie alle Ähnlichkeiten oder Unterschiede, die Ihnen zwischen Solidity und anderen Ihnen bekannten Programmiersprachen auffallen.

Syntax, Datentypen, Variablen und Funktionen in Solidity

In Solidity gibt es verschiedene Datentypen, darunter uint, address, bool und string. Wir definieren Variablen zum Speichern von Daten und schreiben Funktionen zum Bearbeiten dieser Daten. Lassen Sie uns einen sehr einfachen Smart Contract erstellen. Wir erstellen einen Vertrag, der eine Nummer speichert und es uns ermöglicht, diese Nummer abzurufen und zu ändern.

Öffnen Sie TronIDE und erstellen Sie einen neuen Arbeitsbereich. Im ersten Vertrag namens Storage.sol finden Sie diesen Code:

Solidity 
 // SPDX-License-Identifier: GPL-3.0 

 Pragma Solidity >=0.7.0 <0.9.0; 

 /** 
 * @title Storage 
 * @dev Wert in einer Variablen speichern und abrufen 
 */ 
 Contract Storage { 

 uint256 number; 

 /** 
 * @dev Wert in Variable speichern 
 * @param num Wert zum Speichern 
 */ 
 function store(uint256 num) public {
        number = num;
    }

    /** 
 * @dev Rückgabewert 
 * @return value of 'Nummer' 
 */ 
 Funktion Retrie() öffentliche Ansicht gibt (uint256) zurück {
        return number;
    }
}

In diesem Vertrag erklären wir:

  • Eine number vom Typ uint256 (256-Bit-Ganzzahl ohne Vorzeichen)
  • Eine Funktion store() , die den Wert von numberaktualisiert
  • Eine Funktion retrieve() , die den aktuellen Wert der numberzurückgibt

Schreiben und Bereitstellen eines einfachen Tron-Smart-Vertrags im Nile-Testnetz

Nachdem wir nun unseren Vertrag haben, lassen Sie uns ihn im Nile Testnet bereitstellen.

  • Schritt 1: Kompilieren Sie den Vertrag in TronIDE, indem Sie auf das zweite Symbol von oben in der linken Seitenleiste klicken (Kompilieren).
  • Schritt 2: Stellen Sie sicher, dass Ihr TronLink-Wallet mit dem Nile Testnet verbunden ist.

  • Schritt 3: Klicken Sie in TronIDE auf das dritte Symbol von oben in der linken Seitenleiste (Transaktionen bereitstellen und ausführen), wählen Sie Ihren Vertrag im Dropdown-Menü aus und klicken Sie auf „Bereitstellen“.

Voila! Ihr erster Vertrag ist jetzt im Nile Testnet aktiv!

Interaktion mit dem bereitgestellten Vertrag

Führen Sie nach der erfolgreichen Bereitstellung Ihres Smart-Vertrags im Nile Testnet über TronIDE die folgenden Schritte aus:

  • Schritt 1: Öffnen Sie die Registerkarte „Transaktionen bereitstellen und ausführen“ in TronIDE. Dies ist das dritte Symbol von oben in der linken Seitenleiste.
  • Schritt 2: Im Abschnitt „Bereitgestellte Verträge“ unten sehen Sie eine Liste der von Ihnen bereitgestellten Verträge. Suchen Sie den Vertrag mit dem Namen „Storage“. Klicken Sie darauf, um es zu erweitern und die Funktionen des Vertrags anzuzeigen.
  • Schritt 3: Sie sehen zwei aufgelistete Funktionen: store() und retrieve().
  • Schritt 4: Um eine Zahl zu speichern, geben Sie die gewünschte Zahl in das Feld neben der Funktion store() ein. Stellen Sie sicher, dass die Zahl im akzeptablen Bereich für uint256 liegt (zwischen 0 und etwa 1,15 x 10^77). Nachdem Sie die Nummer eingegeben haben, klicken Sie auf die Schaltfläche store() . Eine Transaktion wird eingeleitet.

  • Schritt 5: Es erscheint eine TronLink-Benachrichtigung, in der Sie um Bestätigung zur Durchführung dieser Transaktion gebeten werden. Bestätigen Sie die Transaktion.
  • Schritt 6: Nachdem die Transaktion bestätigt wurde (Sie können den Status im Transaktionsverlauf Ihrer TronLink-Wallet überprüfen), können Sie die Funktion retrieve() aufrufen. Klicken Sie auf die Schaltfläche retrieve() . Für diese Funktion muss kein Wert eingegeben werden.
  • Schritt 7: Der Aufruf der Funktion retrieve() erstellt keine neue Transaktion, da es sich um eine view handelt (der Vertragsstatus wird dadurch nicht geändert). Die Ausgabe sollte auf der Registerkarte „Konsole“ unten auf dem TronIDE-Bildschirm angezeigt werden. Die angezeigte Nummer sollte mit der Nummer übereinstimmen, die Sie mit der Funktion store() gespeichert haben.

Das ist es! Sie haben mit Ihrem bereitgestellten Vertrag interagiert. Diese Interaktion bildet den Kernbestandteil der Art und Weise, wie Benutzer mit Ihren dApps interagieren.

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

Solidity Smart Contract-Grundlagen

Willkommen zu Lektion 2! Heute tauchen wir in die faszinierende Welt der Solidity-Programmierung und der Erstellung intelligenter Verträge ein. Wir werden die grundlegende Syntax von Solidity, Datentypen, Variablen und Funktionen untersuchen. Darüber hinaus werden wir unseren ersten einfachen Smart Contract schreiben und ihn mithilfe von TronIDE und unserem TronLink-Wallet im Nile Testnet bereitstellen. Lasst uns gleich einsteigen!

Einführung in die Programmiersprache Solidity für Smart Contracts

Solidity ist die wichtigste Programmiersprache für die Erstellung intelligenter Verträge auf Tron und anderen Ethereum-basierten Blockchains. Die Syntax von Solidity ähnelt der von JavaScript, was das Erlernen für Personen mit JavaScript-Hintergrund erleichtert.

Aktivität 1: Verbringen Sie etwa 20 Minuten damit, die Solidity-Dokumentation durchzugehen (https://docs.soliditylang.org/). Notieren Sie alle Ähnlichkeiten oder Unterschiede, die Ihnen zwischen Solidity und anderen Ihnen bekannten Programmiersprachen auffallen.

Syntax, Datentypen, Variablen und Funktionen in Solidity

In Solidity gibt es verschiedene Datentypen, darunter uint, address, bool und string. Wir definieren Variablen zum Speichern von Daten und schreiben Funktionen zum Bearbeiten dieser Daten. Lassen Sie uns einen sehr einfachen Smart Contract erstellen. Wir erstellen einen Vertrag, der eine Nummer speichert und es uns ermöglicht, diese Nummer abzurufen und zu ändern.

Öffnen Sie TronIDE und erstellen Sie einen neuen Arbeitsbereich. Im ersten Vertrag namens Storage.sol finden Sie diesen Code:

Solidity 
 // SPDX-License-Identifier: GPL-3.0 

 Pragma Solidity >=0.7.0 <0.9.0; 

 /** 
 * @title Storage 
 * @dev Wert in einer Variablen speichern und abrufen 
 */ 
 Contract Storage { 

 uint256 number; 

 /** 
 * @dev Wert in Variable speichern 
 * @param num Wert zum Speichern 
 */ 
 function store(uint256 num) public {
        number = num;
    }

    /** 
 * @dev Rückgabewert 
 * @return value of 'Nummer' 
 */ 
 Funktion Retrie() öffentliche Ansicht gibt (uint256) zurück {
        return number;
    }
}

In diesem Vertrag erklären wir:

  • Eine number vom Typ uint256 (256-Bit-Ganzzahl ohne Vorzeichen)
  • Eine Funktion store() , die den Wert von numberaktualisiert
  • Eine Funktion retrieve() , die den aktuellen Wert der numberzurückgibt

Schreiben und Bereitstellen eines einfachen Tron-Smart-Vertrags im Nile-Testnetz

Nachdem wir nun unseren Vertrag haben, lassen Sie uns ihn im Nile Testnet bereitstellen.

  • Schritt 1: Kompilieren Sie den Vertrag in TronIDE, indem Sie auf das zweite Symbol von oben in der linken Seitenleiste klicken (Kompilieren).
  • Schritt 2: Stellen Sie sicher, dass Ihr TronLink-Wallet mit dem Nile Testnet verbunden ist.

  • Schritt 3: Klicken Sie in TronIDE auf das dritte Symbol von oben in der linken Seitenleiste (Transaktionen bereitstellen und ausführen), wählen Sie Ihren Vertrag im Dropdown-Menü aus und klicken Sie auf „Bereitstellen“.

Voila! Ihr erster Vertrag ist jetzt im Nile Testnet aktiv!

Interaktion mit dem bereitgestellten Vertrag

Führen Sie nach der erfolgreichen Bereitstellung Ihres Smart-Vertrags im Nile Testnet über TronIDE die folgenden Schritte aus:

  • Schritt 1: Öffnen Sie die Registerkarte „Transaktionen bereitstellen und ausführen“ in TronIDE. Dies ist das dritte Symbol von oben in der linken Seitenleiste.
  • Schritt 2: Im Abschnitt „Bereitgestellte Verträge“ unten sehen Sie eine Liste der von Ihnen bereitgestellten Verträge. Suchen Sie den Vertrag mit dem Namen „Storage“. Klicken Sie darauf, um es zu erweitern und die Funktionen des Vertrags anzuzeigen.
  • Schritt 3: Sie sehen zwei aufgelistete Funktionen: store() und retrieve().
  • Schritt 4: Um eine Zahl zu speichern, geben Sie die gewünschte Zahl in das Feld neben der Funktion store() ein. Stellen Sie sicher, dass die Zahl im akzeptablen Bereich für uint256 liegt (zwischen 0 und etwa 1,15 x 10^77). Nachdem Sie die Nummer eingegeben haben, klicken Sie auf die Schaltfläche store() . Eine Transaktion wird eingeleitet.

  • Schritt 5: Es erscheint eine TronLink-Benachrichtigung, in der Sie um Bestätigung zur Durchführung dieser Transaktion gebeten werden. Bestätigen Sie die Transaktion.
  • Schritt 6: Nachdem die Transaktion bestätigt wurde (Sie können den Status im Transaktionsverlauf Ihrer TronLink-Wallet überprüfen), können Sie die Funktion retrieve() aufrufen. Klicken Sie auf die Schaltfläche retrieve() . Für diese Funktion muss kein Wert eingegeben werden.
  • Schritt 7: Der Aufruf der Funktion retrieve() erstellt keine neue Transaktion, da es sich um eine view handelt (der Vertragsstatus wird dadurch nicht geändert). Die Ausgabe sollte auf der Registerkarte „Konsole“ unten auf dem TronIDE-Bildschirm angezeigt werden. Die angezeigte Nummer sollte mit der Nummer übereinstimmen, die Sie mit der Funktion store() gespeichert haben.

Das ist es! Sie haben mit Ihrem bereitgestellten Vertrag interagiert. Diese Interaktion bildet den Kernbestandteil der Art und Weise, wie Benutzer mit Ihren dApps interagieren.

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.
It seems that you are attempting to access our services from a Restricted Location where Gate is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Thailand, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.