-
bitcoin $87959.907984 USD
1.34% -
ethereum $2920.497338 USD
3.04% -
tether $0.999775 USD
0.00% -
xrp $2.237324 USD
8.12% -
bnb $860.243768 USD
0.90% -
solana $138.089498 USD
5.43% -
usd-coin $0.999807 USD
0.01% -
tron $0.272801 USD
-1.53% -
dogecoin $0.150904 USD
2.96% -
cardano $0.421635 USD
1.97% -
hyperliquid $32.152445 USD
2.23% -
bitcoin-cash $533.301069 USD
-1.94% -
chainlink $12.953417 USD
2.68% -
unus-sed-leo $9.535951 USD
0.73% -
zcash $521.483386 USD
-2.87%
Wie schreibe ich Ihren ersten Smart Contract mit Solidität? (Schritt-für-Schritt-Anleitung)
Set up Node.js, Truffle, and Ganache; write an ERC-20 token using OpenZeppelin; compile, deploy locally, and test via Truffle console and JavaScript.
Jan 17, 2026 at 12:00 am
Einrichten der Entwicklungsumgebung
1. Installieren Sie Node.js und npm, um die für Solidity-Tools erforderlichen Abhängigkeiten zu verwalten.
2. Verwenden Sie npm, um Truffle weltweit zu installieren – ein weit verbreitetes Entwicklungsframework für Ethereum-basierte Smart Contracts.
3. Installieren Sie Ganache als persönliche Blockchain für lokale Tests; Es stellt Privatkonten mit vorfinanzierter ETH zur Verfügung.
4. Konfigurieren Sie ein neues Truffle-Projekt mit truffle init , um wichtige Verzeichnisse wie „contracts/“ , „migrations/“ und „test/“ zu generieren.
5. Überprüfen Sie die Installationsintegrität, indem Sie die Truffle-Version ausführen und die Kompatibilität mit dem Solidity-Compiler v0.8.x oder höher bestätigen.
Einen Basis-Token-Vertrag schreiben
1. Erstellen Sie eine neue Datei mit dem Namen MyToken.sol im Ordner „contracts/“ .
2. Deklarieren Sie das Pragma der Solidity-Version: pragma solidity ^0.8.20; um ein deterministisches Kompilierungsverhalten sicherzustellen.
3. Importieren Sie die ERC-20-Implementierung von OpenZeppelin: import '@openzeppelin/contracts/token/ERC-20/ERC-20.sol';
4. Definieren Sie die Vertragsvererbung: Vertrag MyToken ist ERC20 { ... } und initialisieren Sie Name, Symbol und Gesamtversorgung im Konstruktor.
5. Fügen Sie eine Mint-Funktion hinzu, die auf den Besitzer beschränkt ist, indem Sie den Modifikator „onlyOwner“ aus der AccessControl-Bibliothek von OpenZeppelin verwenden.
Kompilieren und Bereitstellen des Vertrags
1. Schreiben Sie ein Migrationsskript in migrations/2_deploy_contracts.js, um MyToken mit 1 Million Token zu instanziieren und bereitzustellen.
2. Führen Sie die Trüffelkompilierung aus, um ABI und Bytecode zu generieren. Stellen Sie sicher, dass keine Syntax- oder Versionskonfliktfehler auftreten.
3. Starten Sie Ganache und kopieren Sie die RPC-Server-URL (z. B. http://127.0.0.1:7545) in truffle-config.js im Entwicklungsnetzwerk .
4. Führen Sie truffle migrate --network development aus, um den Vertrag bereitzustellen und Transaktions-Hashes und Vertragsadressen aufzuzeichnen.
5. Bestätigen Sie den Erfolg der Bereitstellung, indem Sie das Transaktionsprotokoll von Ganache überprüfen und sicherstellen, dass die Vertragsadresse in der Konsolenausgabe erscheint.
Interaktion über die Truffle-Konsole
1. Starten Sie die mit Ganache verbundene Truffle-Konsole: truffle console --network development .
2. Rufen Sie die bereitgestellte Instanz ab: let instance = waiting MyToken.deployed();
3. Fragen Sie den Gesamtvorrat mit (await example.totalSupply()).toString() ab – erwarten Sie eine Ausgabe, die dem anfänglichen Mint-Wert entspricht.
4. Übertragen Sie Token zwischen Konten: Warten Sie auf example.transfer('0xAb8483F64d9C6d1EcF9b849Ae677dC320f55a1B5', '1000') .
5. Validieren Sie Saldoänderungen mit (await instance.balanceOf('0xAb8483F64d9C6d1EcF9b849Ae677dC320f55a1B5')).toString() .
Testen mit JavaScript
1. Erstellen Sie test/mytoken.js mit Testfällen im Mocha-Stil für die Kernfunktionalität.
2. Verwenden Sie Contract() , um den Testkontext zu definieren, und it() -Blöcke, um Verhalten wie Prägen, Übertragen und Ereignisemission zu bestätigen.
3. Stellen Sie nach dem Aufruf von transfer die korrekten Ereignisprotokolle mit Assert.equal(receipt.logs[0].event, 'Transfer') sicher.
4. Testen Sie die Umkehrungsbedingungen: Versuchen Sie, mehr als das Guthaben zu übertragen, und stellen Sie sicher, dass die Wiederherstellung mit dem Dienstprogramm ExpectRevert ausgelöst wird.
5. Führen Sie Tests mit Trüffeltest durch und bestätigen Sie, dass alle Behauptungen ohne Zeitüberschreitung oder Laufzeitausnahmen erfolgreich sind.
Häufig gestellte Fragen
F: Kann ich einen Solidity-Vertrag bereitstellen, ohne Truffle zu verwenden? A: Ja. Zu den Alternativen gehören Hardhat, Remix IDE oder direkte web3.js-Aufrufe mit kompiliertem Bytecode und ABI.
F: Was passiert, wenn ich das Schlüsselwort payable für eine Funktion vergesse, die ETH empfängt? A: Die Funktion macht jede Transaktion rückgängig, die versucht, ETH zu senden, was zu einer fehlgeschlagenen Ausführung und einem Gasverbrauch führt.
F: Ist es sicher , tx.origin für die Zugriffskontrolle zu verwenden? A: Nein. tx.origin kann über Phishing-Verträge manipuliert werden und darf msg.sender bei Berechtigungsprüfungen niemals ersetzen.
F: Wie überprüfe ich den Quellcode meines Vertrags auf Etherscan? A: Übermitteln Sie die genaue Solidity-Quelle, Compiler-Version, Optimierungseinstellungen und Konstruktorargumente über das Verifizierungsformular von Etherscan.
Haftungsausschluss:info@kdj.com
Die bereitgestellten Informationen stellen keine Handelsberatung dar. kdj.com übernimmt keine Verantwortung für Investitionen, die auf der Grundlage der in diesem Artikel bereitgestellten Informationen getätigt werden. Kryptowährungen sind sehr volatil und es wird dringend empfohlen, nach gründlicher Recherche mit Vorsicht zu investieren!
Wenn Sie glauben, dass der auf dieser Website verwendete Inhalt Ihr Urheberrecht verletzt, kontaktieren Sie uns bitte umgehend (info@kdj.com) und wir werden ihn umgehend löschen.
-
RAIN Jetzt handeln$0.007852
113.00%
-
PIPPIN Jetzt handeln$0.06097
51.96%
-
PARTI Jetzt handeln$0.1396
42.04%
-
WAVES Jetzt handeln$0.9141
41.69%
-
ARC Jetzt handeln$0.04302
35.73%
-
HONEY Jetzt handeln$0.01029
21.80%
- Der Crossover-Moment der Kryptowährung: Airdrops, Token und der Weg zum Börsengang
- 2026-02-10 04:25:01
- Axie Infinity-Käufer befeuern Marktsprung mit neuem bAXS-Token-Airdrop und technischem Wiederaufleben
- 2026-02-10 03:40:02
- Kerfuffle beim Münzparken in Japan führt nach sechs Jahren zur Verhaftung
- 2026-02-10 04:20:01
- Mark Yusko prognostiziert die Entwicklung des Bitcoin-Preises bis 2026 inmitten des Krypto-Winters und der sich verändernden Marktdynamik
- 2026-02-10 04:20:01
- Investition in Silbermünzen: Ihr bester Kauf für einen volatilen Markt
- 2026-02-10 04:15:02
- Anstieg der Bitcoin-Bestände: Der 90-Millionen-Dollar-Kauf der Strategie signalisiert eine Vertiefung der institutionellen Überzeugung
- 2026-02-10 04:15:02
Verwandtes Wissen
Wie kann man die Hebelwirkung für Daytrading-Kryptowährungen sicher maximieren?
Feb 08,2026 at 01:19am
Hebelwirkungsmechanismen bei Krypto-Derivaten verstehen 1. Die Hebelwirkung vervielfacht potenzielle Gewinne und Verluste, indem sie es Händlern ermög...
Wie richtet man eine „One-Click“-Handelsschnittstelle für Scalping ein?
Feb 09,2026 at 10:59pm
Kernanforderungen an die Architektur 1. Eine WebSocket-Verbindung mit geringer Latenz muss direkt mit dem Orderbuch-Feed der Börse hergestellt werden,...
Wie handelt man Ethereum-Futures vor und nach größeren Upgrades?
Feb 08,2026 at 09:40am
Die Mechanismen von Ethereum-Futures verstehen 1. Ethereum-Futures-Kontrakte sind standardisierte Vereinbarungen zum Kauf oder Verkauf von ETH zu eine...
Wie finde ich hochliquide Paare für große Kontraktgeschäfte?
Feb 08,2026 at 06:20pm
Suche nach hochliquiden Paaren für große Kontraktgeschäfte Händler, die große Kontraktaufträge ausführen, müssen der Liquidität Priorität einräumen, u...
Wie kann man „Mark Price“ vs. „Last Price“ verwenden, um eine Liquidation zu verhindern?
Feb 07,2026 at 05:39pm
Mark-Price-Mechanik verstehen 1. Der Markpreis ist ein zusammengesetzter Wert, der aus mehreren Spot-Börsenindizes und Anpassungen der Finanzierungssä...
Wie berechnet man den „Return on Equity“ (ROE) im Leverage Trading?
Feb 08,2026 at 04:39am
Die Eigenkapitalrendite im Leverage Trading verstehen 1. Der Return on Equity (ROE) beim Leverage-Handel misst die erzielte Rentabilität im Verhältnis...
Wie kann man die Hebelwirkung für Daytrading-Kryptowährungen sicher maximieren?
Feb 08,2026 at 01:19am
Hebelwirkungsmechanismen bei Krypto-Derivaten verstehen 1. Die Hebelwirkung vervielfacht potenzielle Gewinne und Verluste, indem sie es Händlern ermög...
Wie richtet man eine „One-Click“-Handelsschnittstelle für Scalping ein?
Feb 09,2026 at 10:59pm
Kernanforderungen an die Architektur 1. Eine WebSocket-Verbindung mit geringer Latenz muss direkt mit dem Orderbuch-Feed der Börse hergestellt werden,...
Wie handelt man Ethereum-Futures vor und nach größeren Upgrades?
Feb 08,2026 at 09:40am
Die Mechanismen von Ethereum-Futures verstehen 1. Ethereum-Futures-Kontrakte sind standardisierte Vereinbarungen zum Kauf oder Verkauf von ETH zu eine...
Wie finde ich hochliquide Paare für große Kontraktgeschäfte?
Feb 08,2026 at 06:20pm
Suche nach hochliquiden Paaren für große Kontraktgeschäfte Händler, die große Kontraktaufträge ausführen, müssen der Liquidität Priorität einräumen, u...
Wie kann man „Mark Price“ vs. „Last Price“ verwenden, um eine Liquidation zu verhindern?
Feb 07,2026 at 05:39pm
Mark-Price-Mechanik verstehen 1. Der Markpreis ist ein zusammengesetzter Wert, der aus mehreren Spot-Börsenindizes und Anpassungen der Finanzierungssä...
Wie berechnet man den „Return on Equity“ (ROE) im Leverage Trading?
Feb 08,2026 at 04:39am
Die Eigenkapitalrendite im Leverage Trading verstehen 1. Der Return on Equity (ROE) beim Leverage-Handel misst die erzielte Rentabilität im Verhältnis...
Alle Artikel ansehen














