Solidity ist die Programmiersprache, die von Smart Contracts auf der Ethereum-Blockchain verwendet wird. Es ist eine statisch typisierte, objektorientierte Programmiersprache.
Solidity verwendet ein semantisches Versionierungsschema und zum Zeitpunkt des Schreibens ist die neueste Version 0.8.9. Wie Sie sehen, verwendet die Sprache ein semantisches XYZ-Versionierungsformat, das anzeigt, wie schnell die Änderungen sind.
Programmiersprachen wie C++ und JavaScript haben die Solidity-Sprache inspiriert. In dieser Anleitung erfahren Sie, wie Sie Ihren ersten Smart Contract schreiben und zusammenstellen können.
Der Remix-Editor
Es gibt viele Texteditoren und Compiler, mit denen Sie Solidity-Code schreiben können, aber der einfachste ist Remix . Remix ist eine Online-IDE, mit der Sie Ihren Solidity-Code schreiben und debuggen können. Wenn Sie Remix zum ersten Mal besuchen, sollten Sie eine Landing Page sehen, die der folgenden ähnelt.
Schreiben Sie Ihren ersten intelligenten Vertrag
Klicken Sie zunächst auf das Symbol Neue Datei erstellen auf der Registerkarte Datei-Explorer. Das Symbol sieht aus wie ein Blatt Papier mit einer umgefalteten Ecke. Benennen Sie die neue Datei helloWorld.sol . Verwenden Sie die Erweiterung .sol , um anzuzeigen , dass die Datei Solidity-Code enthält.
Sie können nun den unten stehenden Code in Ihre neue Datei kopieren. Eine Erklärung für jede Zeile folgt unten.
// SPDX-License-Identifier: GPL-3.0 pragma solidity ^0.8.1; contract FirstContract { uint var1; function set(uint x) public { var1 = x; } function get() public view returns (uint) { return var1; } }
Die erste Zeile zeigt die Lizenz, unter der jemand die Software verwenden und verteilen darf. Der Code im obigen Beispiel verwendet die GPL-Version 3.0 . Sie können diese durch jede andere Lizenz wie die MIT-Lizenz ersetzen .
Die zweite Zeile zeigt eine Pragma- Direktive, die den Compiler anweist, jede Solidity-Version von 0.8.1 bis 0.9.0 zu verwenden, jedoch ohne 0.9.0. Das heißt, >= 0.8.1 bis < 0.9.0.="">
Es ist auch wichtig, diese Zeile einzuschließen, um eine Inkompatibilität zwischen Ihrem Code und der Compilerversion zu vermeiden.
Verwandte: Was ist Solidität und wie wird sie verwendet, um Smart Contracts zu entwickeln?
Es gibt normalerweise kleinere Änderungen oder Patches innerhalb der xy- Z- Versionen. Breaking Changes sind normalerweise in x vorhanden. Y .z Versionen. Aus diesem Grund enthält die Pragma- Direktive die Version 0.9.0 nicht im obigen Code.
Solidität ist eine objektorientierte Sprache. Das Schlüsselwort Contract in Zeile vier wird dem Schlüsselwort class in anderen objektorientierten Sprachen ähnlich verwendet .
Verträge können Funktionen, Zustandsvariablen und andere erweiterte Typen enthalten. Der Vertrag FirstContract enthält eine vorzeichenlose ganze Zahl ( Einheit ) namens var1 .
Die beiden Funktionen set() und get() sind Setter- bzw. Getter-Funktionen für die Variable var1 . Sie können eine Funktion mit dem Schlüsselwort function gefolgt vom Funktionsnamen und Klammern definieren.
In Klammern können Sie die Parameter angeben, die Ihre Funktion annehmen soll. Sie sollten sie ähnlich wie Variablendefinitionen schreiben: Geben Sie den Datentyp gefolgt vom Parameternamen an.
Verwandte: Was ist Monero und wie schützt es Ihre Privatsphäre?
Beachten Sie, dass die Definitionen der Funktionen set() und get() das Schlüsselwort public enthalten . Damit wird erklärt, dass jeder andere Vertrag sie aufrufen kann.
Kompilieren und bereitstellen
Um Ihren Code zu kompilieren, klicken Sie auf die Schaltfläche Solidity-Compiler . Wenn Sie mit der Maus über die Schaltflächen auf der linken Seite des Editors fahren, sollten Sie den Namen der Schaltfläche sehen können.
Klicken Sie nun auf die Schaltfläche Compile helloWorld.sol . Wenn der Compiler keine Fehler feststellt, haben Sie Ihren ersten Smart Contract erfolgreich kompiliert.
Um Ihren Code bereitzustellen , klicken Sie auf die Schaltfläche Transaktionen bereitstellen und ausführen . Diese Schaltfläche befindet sich direkt unter der Solidity-Compiler- Schaltfläche im linken Menü. Stellen Sie auf dieser Seite sicher, dass Ihr Vertragsname über der Schaltfläche Bereitstellen korrekt angezeigt wird .
Nach der Bestätigung können Sie jetzt auf Bereitstellen klicken , um Ihren Code im aktuellen lokalen Testnetzwerk ohne Transaktionsgebühren auszuführen.
Erstellen von DApps im Ethereum-Netzwerk
Nachdem Sie gelernt haben, wie man Smart Contracts erstellt, sollten Sie als nächstes lernen, wie man dezentrale Apps (DApps) erstellt. Dies sind Blockchain-basierte Anwendungen, die in einem erlaubnislosen Netzwerk ausgeführt werden. Dies ist die Schönheit der Smart Contracts von Ethereum.
Sie haben die Möglichkeit, leistungsstarke P2P-Anwendungen auf Ethereum zu erstellen.