Solidity Smart Contract: Leitfaden für Anfänger

solidity smart contract

Wenn Sie an Verträge denken, stellen Sie sich vielleicht Erwachsene in Anzügen vor, die Hände schütteln und Papiere unterschreiben. Aber in der Welt der Technologie haben wir etwas, das als “Smart Contracts” (intelligente Verträge) bezeichnet wird, und sie sind mit einer Programmiersprache namens “Solidity” geschrieben.

In der sich rasant entwickelnden Welt der Blockchain- und dezentralen Technologien sticht der Begriff “Solidity Smart Contract” häufig als Schlagwort hervor. Daher werden wir in diesen Leitfaden für Einsteiger über Solidity Smart Contracts auf der Ethereum-Blockchain eintauchen.

Egal, ob Sie ein absoluter Neuling, ein erfahrener Entwickler, der in den Blockchain-Bereich wechseln möchte, oder einfach nur ein Technik-Enthusiast sind, dieses Tutorial zielt darauf ab, Ihnen das grundlegende Wissen zu vermitteln, das Sie benötigen. Lassen Sie uns gemeinsam auf diese spannende Reise in die Welt der dezentralen Verträge gehen!

Was ist ein Solidity Smart Contract?

Stellen Sie sich vor, Sie und ihr Freund wollt Spielzeug tauschen. Ihr seid euch beide einig: Wenn Sie ihrem Freund ihr Skateboard geben, gibt er Ihnen seine Rollerblades. Dies ist eine einfache Vereinbarung oder ein Vertrag. Ein Solidity Smart Contract ist genau wie diese Vereinbarung, aber er ist digital und läuft auf dem Computer. Wenn bestimmte Bedingungen erfüllt sind (z. B. wenn du das Skateboard gibst), sorgt der Computer automatisch dafür, dass die andere Seite (dein Freund, der die Rollerblades gibt) passiert. Es ist wie ein Roboter-Schiedsrichter, der dafür sorgt, dass sich alle an ihr Versprechen halten!

Um diesen Online-Vertrag im Detail zu verstehen, sollten Sie “Wie funktionieren Smart Contracts” lesen.

smart contracts eplained

Teilen Sie dieses Bild auf Ihrer Website:

Solidity ist eine spezielle Art von Computersprache, die für die Programmierung von Smart Contracts verwendet wird, insbesondere eine namens Ethereum. Stellen Sie sich Smart Contracts (intelligente Verträge) als digitale Vereinbarungen vor, die automatisch das tun, was sie tun sollen, wenn bestimmte Dinge passieren. Wenn Sie und ein Freund beispielsweise eine Wette über das Wetter abgeschlossen und einen Solidity-Smart-Contract verwendet haben, könnte der Vertrag den Gewinner automatisch auszahlen, wenn das Wetterergebnis klar ist.

Solidity wurde 2014 gegründet und unterstützt Unternehmen bei der Umstellung von regulären Verträgen auf diese digitalen “intelligenten” Verträge. Das Coole an diesen Verträgen ist, dass sie sicher und für alle klar sind, nicht mehr geändert werden können und sofort in Kraft treten. Darüber hinaus können Sie sogar NFT Smart Contracts auf verschiedenen Plattformen erstellen.

Die meisten Leute erstellen einen Solidity Smart Contract, und zwar hauptsächlich für etwas, das als Ethereum-Blockchain bezeichnet wird. Stellen Sie sich die Blockchain als ein grosses digitales Hauptbuch vor, in dem alles aufgezeichnet wird. Ethereum ist wie ein beliebter Spielplatz, auf dem jeder diese Verträge nutzen oder abschliessen kann.

Smart Contract & Solidity Tutorial

Damit der Computer diese digitalen Verträge verstehen und durchsetzen kann, müssen sie auf eine bestimmte Art und Weise geschrieben werden. Hier kommt Solidity ins Spiel. Es ist eine spezielle Programmiersprache , die für das Schreiben dieser Verträge entwickelt wurde. Stellen Sie sich das so vor, als würden Sie Spanisch oder Französisch lernen, aber für Computer.

how smart contracts work

Teilen Sie dieses Bild auf Ihrer Website:

Solidity ist wie eine spezielle Computersprache, die verwendet wird, um Smart Contracts zu erstellen. Stellen Sie sich einen Solidity Smart Contract als Regeln oder Vereinbarungen im Ethereum-System vor.

Solidity verwendet bestimmte Symbole und Muster, die anderen Computersprachen ähneln, von denen Sie vielleicht schon gehört haben, wie Python oder JavaScript.

Mit Solidity können Menschen Regeln für Dinge wie Online-Abstimmungen , das Sammeln von Geld für Projekte oder sogar das Erstellen einer sicheren Online-Wallets zur Aufbewahrung von digitalem Geld aufstellen.

Es ist wichtig, immer die neueste Version von Solidity zu verwenden, wenn Sie diese Regeln erstellen. Dies liegt daran, dass die neueste Version die sicherste ist und über die aktuellsten Funktionen verfügt. Die Versionsnummern sehen wie 0.y.z aus, um zu zeigen, dass sie sich ständig ändern und verbessern.

Wie funktioniert ein Solidity Smart Contract?

Stellen Sie sich einen Verkaufsautomaten vor. Sie werfen eine Münze ein und bekommen einen Schokoriegel. Das ist der “Vertrag” der Maschine mit Ihnen: Eine Münze entspricht einem Bonbon. Ein Solidity Smart Contract funktioniert ähnlich, aber auf dem Computer.

  1. Die Regeln: Genau wie der Automat den Preis der Süssigkeiten kennt, hat der Solidity Smart Contract Regeln (wie “Wenn Sie 10 digitale Münzen geben, erhalten Sie einen virtuellen Aufkleber”).
  2. Die Aktion: Wenn sich jemand an die Regel hält (die richtige Menge an Münzen einwirft), erledigt der Vertrag automatisch seine Aufgabe (gibt den Aufkleber aus).
  3. Sicherheit geht vor: Sobald der Vertrag live ist, kann er nicht mehr einfach geändert werden. Die Leute können ihm also vertrauen. Es ist wie ein Automat, der nicht einfach manipuliert werden kann.

Warum sind Solidity Smart Contracts wichtig?

Diese Verträge sind in der digitalen Welt sehr nützlich und hier ist der Grund, warum sie so wichtig sind:

  • Vertrauen: Die Leute können sicher sein, dass der Vertrag hält, was er sagt, weil er von einem Computer ausgeführt wird, nicht von einer Person, die es vergessen oder ihre Meinung ändern könnte.
  • Geschwindigkeit: Die Dinge passieren schnell, weil alles automatisch ist.
  • Ersparnis: Ohne dass Menschen überprüfen und doppelt überprüfen müssen, kann Zeit und Geld gespart werden.
advantages of smart contracts

Teilen Sie dieses Bild auf Ihrer Website:

Sie können einen Solidity Smart Contract in fast allen Branchen und Sektoren verwenden. Lassen Sie Ihrer Fantasie freien Lauf und Sie werden mit Sicherheit Tausende von erstaunlichen Anwendungen mit riesigen Optimierungsmöglichkeiten finden.

60 Use Cases for Smart Contract

Teilen Sie dieses Bild auf Ihrer Website:

Einen einfachen Solidity Contract verstehen

Wenn Sie neu bei Solidity Smart Contracts sind, sollten Sie damit beginnen, von einfachen Beispielen zu lernen. Sie können jederzeit Codebeispiele kopieren und einfügen und mit ihnen herumspielen. Sehen Sie, was drin ist und wie es funktioniert.

einen einfachen Solidity Contract verstehen

Teilen Sie dieses Bild auf Ihrer Website:

Die ersten Schritte um mit einem einfachen Solidity Contract zu starten sind die folgenden:

Lernen Sie die Programmiersprache Solidity kennen

iMi Solidity Programmierung

Bevor Sie in die Solidity Programmierung einsteigen, sollten Sie sicherstellen, dass Sie die Grundlagen verstehen. Hier ist alles, was Sie in Kürze wissen müssen:

Blockchain & Ethereum Smart Contract

  • Was ist Blockchain? Stellen Sie es sich wie ein digitales Hauptbuch (wie eine Buchhaltung) vor, in das Sie Einträge schreiben können, aber wenn Sie sie einmal geschrieben haben, können Sie sie nicht mehr ändern oder löschen.
  • Was ist Ethereum? Es handelt sich um eine bestimmte Art von Blockchain, mit der Sie Programme ausführen können, die als “Smart Contracts” bezeichnet werden.
  • Was ist ein Smart Contract? Es handelt sich um einen selbstausführenden Vertrag, bei dem die Bedingungen der Vereinbarung direkt in den Code geschrieben sind. Es kann digitales Geld bewegen und Entscheidungen treffen, die auf bestimmten Bedingungen basieren.

Sobald Sie die Grundlagen der Programmiersprache Solidity erlernt haben, können Sie sich ein einfaches Code-Beispiel und eine Code-Beschreibung ansehen. Auf diese Weise werden Sie die grundlegenden Konzepte der Sprache verstehen.

Beginnen Sie mit einem einfachen Solidity Contract

Solidity ist eine Programmiersprache, die zum Schreiben von Smart Contracts für die Ethereum-Plattform verwendet wird. Es sieht ein bisschen wie JavaScript aus, hat aber seine einzigartigen Eigenschaften. Um loszulegen, können Sie die folgenden Schritte ausführen:

Installieren des Solidity Compilers

Wenn Sie Code in Solidity schreiben, benötigen Sie einen Solidity Compiler der Bytecode und andere Artefakte für die Bereitstellung eines Solidity Contracts ausgibt.

Richten Sie Ihre Umgebung ein

Remix-IDE-Logo

Verwenden Sie Online-Plattformen wie Remix IDE. Es handelt sich um eine webbasierte Solidity IDE (integrierte Entwicklungsumgebung) und einen Debugger. Sie können Ihren Solidity Smart Contract direkt über den Browser schreiben, testen und bereitstellen.

Wie lernt man Solidity Smart Contract Programmierung?

So wie man in der Schule Englisch, Mathematik oder Naturwissenschaften lernt, können Menschen Solidity lernen. Es gibt Online-Kurse, Bücher und sogar einige Schulen, die es unterrichten. Wer weiss? Vielleicht schreiben Sie eines Tages Ihren eigenen Solidity-Smart-Contract!

Lernen Sie die Solidity Smart Contract Programmierung

Teilen Sie dieses Bild auf Ihrer Website:

Stellen Sie sich vor, Sie haben Videospiele gespielt, in denen Sie Gegenstände verdienen und tauschen können. In einigen dieser Spiele handeln die Leute mit seltenen Gegenständen und verkaufen sie sogar für echtes Geld. Stellen Sie sich nun vor, es gäbe eine supersichere Online-Bank, in der diese Gegenstände aufbewahrt werden könnten, und jedes Mal, wenn jemand einen Artikel handelte oder verkaufte, gab es eine kugelsichere Aufzeichnung davon, so dass niemand betrügen konnte. Das ist die Idee hinter einer Blockchain – einem digitalen System, in dem jede Transaktion sicher aufgezeichnet wird.

Solidity ist die Sprache, die wir verwenden, um Programme (sogenannte “Smart Contracts”) auf der Ethereum Blockchain Plattform zu erstellen. Diese Verträge sind wie Automaten im Internet. Man wirft etwas hinein, wie eine Münze, und der Automat macht sein Ding auf der Grundlage der Regeln, die in ihm programmiert sind, wie Ihnen eine Limonade zu geben.

Lassen Sie es uns weiter aufschlüsseln:

Grundlegende Konzepte von Solidity

  • Datentypen: Erfahren Sie mehr über grundlegende Datentypen wie uint256 (Ganzzahl ohne Vorzeichen), address (für Ethereum-Adressen) und string (für Text).
  • Funktionen: Funktionen sind Sätze von Anweisungen, die Ihr Vertrag ausführen soll. Zum Beispiel könnte eine Funktion eingestellt werden, um etwas Ether (die Kryptowährung von Ethereum) von einer Person auf eine andere zu übertragen.
  • Sichtbarkeit: Funktionen und Zustandsvariablen haben Attribute wie public, private, internal und external. Dadurch wird festgelegt, wer darauf zugreifen kann.
  • Variablen: Diese sind wie kleine Boxen, in denen Sie Dinge aufbewahren können. Vielleicht eine Zahl, ein Wort oder sogar ein längerer Text.
  • Ereignisse: Diese sind wie Alarme oder Benachrichtigungen. Wenn etwas Wichtiges im Smart Contract passiert, kann er ein Ereignis ausrufen, um alle darüber zu informieren.
  • Modifikatoren: Dies sind Möglichkeiten, bestimmte Aktivitäten in Ihrem Vertrag zu protokollieren und zu überwachen.
  • Gas: Das ist ein bisschen knifflig. In Ethereum kostet jede Aktion eine gewisse Menge an “Gas” (nicht die Art, die man zum Heizen braucht!). Es ist wie eine kleine Gebühr, um Ihr Programm zum Laufen zu bringen. Wenn Sie nicht genug Gas bezahlen, kann es sein, dass Ihr Programm nicht abgeschlossen wird.

ERC-20-Token: Erfahren Sie, wie Sie Ihre eigene Kryptowährung mit der Ethereum-Plattform erstellen können. Der ERC-20-Standard ist eine Reihe von Regeln, die Ihr Token befolgen muss.

Speicher vs. Arbeitsspeicher: Verstehen Sie den Unterschied zwischen permanentem Speicher (teurer) und temporärem Speicher in Ihren Verträgen.

Sicherheit: Solidity ist mächtig, aber mit grosser Macht kommt grosse Verantwortung. Wenn es einen Fehler in Ihrem Programm gibt, könnte jemand alle Münzen stehlen oder das Programm unbrauchbar machen. Deshalb ist es super wichtig, zu testen und vorsichtig zu sein.

Ein einfacher Smart Contract in Solidity

Beginnen wir mit einem einfachen und einfachen Beispiel eines Smart Contract mit der Programmiersprache Solidity. Wir legen einen Wert fest und lassen andere Verträge ihn sehen. Machen Sie sich keine Sorgen, wenn Sie jetzt nicht alles verstehen, wir erklären später mehr.

Beispiel für einen einfachen Solidity Smart Contract
Open in Remix

Am Anfang steht, dass dieser Code einigen Regeln folgt, ähnlich wie zu sagen, dass ein Spiel nach bestimmten Regeln gespielt wird. Dies trägt dazu bei, dass alles richtig funktioniert.

Der Code ist für eine bestimmte Version einer Sprache namens Solidity geschrieben, was in etwa so ist, als würde man sagen, dass ein Spiel auf bestimmten Spielkonsolen am besten funktioniert. Damit soll sichergestellt werden, dass sich das Spiel (oder der Code) nicht seltsam verhält, wenn es auf einer anderen Konsole (oder mit einer anderen Version) gespielt wird.

In dieser Welt des Programmierens ist ein “Vertrag” wie eine Kiste. In dieser Box befinden sich Dinge, die es tun kann (Funktionen) und Informationen, die es speichert (Daten). In diesem Kästchen befindet sich eine Stelle, die eine Zahl aufnehmen kann. Wir haben diesen Spot “storedData” genannt.

Es gibt zwei Hauptdinge, die diese Box tun kann:

  1. Ändern Sie die Zahl im Feld “storedData”.
  2. Teilt Ihnen mit, welche Zahl sich im Spot “storedData” befindet.

Normalerweise verwenden Sie in einigen Spielen oder Apps das Wort “this”, um über etwas darin zu sprechen. Hier ist das nicht nötig. Es ist, als hätte man ein Spielzeug in einer Spielzeugkiste und nenne es einfach “Spielzeug” statt “dieses Spielzeug”.

Diese Box ist ziemlich einfach. Jeder kann eine Zahl eingeben. Aber jeder andere kann auch kommen und diese Zahl ändern. Es ist wie ein öffentliches schwarzes Brett, auf das man eine Nachricht schreibt, aber jeder kann kommen und darüber schreiben. Es werden jedoch alle alten Zahlen gespeichert, wie z. B. das Aufbewahren alter Notizen, auch wenn sie verdeckt sind. Später werden wir lernen, wie wir unser schwarzes Brett privat halten können, damit nur bestimmte Personen darauf schreiben können.

Ist Solidity nur für Ethereum?

Obwohl Solidity speziell für Ethereum entwickelt wurde, ist es nicht nur für Ethereum. Es kann für andere Blockchain-Plattformen verwendet werden, die Ethereum ähneln, aber es könnten einige Unterschiede oder Optimierungen erforderlich sein.

Solidity Programmierung auf der Ethereum-Plattform

Teilen Sie dieses Bild auf Ihrer Website:

Stellen Sie sich vor, Sie haben eine Spielkonsole wie eine PlayStation. Um darauf spielen zu können, benötigen Sie in der Regel Spiele, die speziell für die PlayStation entwickelt wurden. In ähnlicher Weise ist Ethereum wie eine Spielkonsole, und Solidity ist die Sprache, die verwendet wird, um “Spiele” oder in diesem Fall Smart Contracts dafür zu erstellen.

So wie Sie vielleicht einige Spiele finden, die mit leichten Änderungen auch auf anderen Konsolen funktionieren, kann Solidity, das in erster Linie für Ethereum entwickelt wurde, auch auf anderen Blockchain-Plattformen verwendet werden. Diese anderen Plattformen, wie Avalanche, Polygon und Binance Smart Chain, sind so etwas wie “Cousins” von Ethereum, da sie Ähnlichkeiten mit Ethereum haben.

Fazit

Ein Smart Contract mit Solidity ist also wie ein superintelligenter, vertrauenswürdiger Roboter-Schiedsrichter, der sicherstellt, dass jeder seine Versprechen in der digitalen Welt einhält. Mit zunehmender Technologie werden diese Verträge immer wichtiger. Und denken Sie einfach, Sie wissen jetzt etwas super Cooles, das selbst einige Profis vielleicht nicht verstehen!

Denken Sie daran, wenn Sie das nächste Mal mit Spielzeug, Snacks oder vielleicht sogar digitalen Aufklebern handeln, dass es eine ganze Welt von Smart Contracts gibt, die sicherstellen, dass alles fair und ehrlich ist! Wenn Sie alles im Detail lernen möchten, dann treten Sie unserer iMi Blockchain Akademie bei. Falls Sie jemanden suchen, der einen digitalen Vertrag für Sie prüft oder umsetzt, dann wenden Sie sich noch heute an einen unserer Experten.

Erfahren Sie alles über Blockchain!


Blockchain-Training in kleinen Klassen
Webinare zum Thema Blockchain
Studiengänge auf universitärem Niveau

Lerne Jetzt Blockchain

Kostenlose Blockchain-Tipps!


Holen Sie sich monatliche Tipps zum Thema Blockchain.
Darüber hinaus erhalten Sie unseren kostenlosen Blockchain-Anfängerkurs. Erfahren Sie, wie diese Technologie unser Leben verändern wird.

Marcel Isler

Marcel Isler

Marcel ist Ökonom und Gründer von iMi Blockchain. Er ist Berater und internationaler Referent. Er studierte an der Universität von Oxford. Er hilft Unternehmen bei der Implementierung von Blockchain Anwendungen. In unserem Blog schreibt er über distributed Ledger Technologie, smart Contracts, Krypto-Währungen, News und zukünftigen Trends.