Oefening: de Truffle voor VS Code-extensie installeren
De Truffle voor VS Code-extensie: met deze extensie kunt u eenvoudiger slimme contracten maken, bouwen en implementeren op Ethereum-grootboeken. Deze extensie heeft ingebouwde integratie met Truffle, Ganache en meer hulpprogramma's en services. In deze module gebruiken we deze extensie om slimme contracten te schrijven en te testen.
De extensie installeren
Selecteer in Visual Studio Code Extensies in de zijbalk aan de linkerkant. Zoek naar Truffle voor VS Code en selecteer deze om deze te installeren.
Voordat u de Truffle-extensie gebruikt, controleert u of u het volgende hebt geïnstalleerd:
-
Node.js en npm: Als u wilt bevestigen dat Node.js is geïnstalleerd, opent u de terminal en typt
node
u . Als Node.js is geïnstalleerd, ziet u de versie van Node.js op uw computer. U kunt ook bevestigen dat het knooppuntpakketbeheer (npm) is geïnstalleerd door in de terminal te typennpm
. -
Git: Als u wilt bevestigen dat Git is geïnstalleerd, opent u uw terminal en typt
git
u . Als Git is geïnstalleerd, retourneert de terminal een lijst met beschikbare Git-opdrachten. - Truffle Suite: De extensie biedt een koppeling voor het installeren van de Truffle Suite met ontwikkelhulpprogramma's (vereist terwijl de extensie in openbare preview is).
- Ganache: De extensie biedt een koppeling om Ganache te installeren (vereist terwijl de extensie in openbare preview is).
Als u deze software niet hebt geïnstalleerd of niet over de minimale versies beschikt, biedt de extensie tips voor het installeren van de hulpprogramma's.
Aan de slag
Wanneer alle afhankelijkheden zijn geïnstalleerd, gebruikt u de Truffle-extensie om uw eerste project te maken:
Voeg op uw computer een lege map toe voor het project. Als u een map wilt maken vanuit Visual Studio Code, gaat u naar Terminal>New Terminal en typt u
mkdir newSolidityProject
. Noteer de locatie van de nieuwe map. U hebt deze later nodig.Ga in Visual Studio Code naar View>Command Palette. Typ
Truffle: New Solidity Project
in het zoekvak. Terwijl u typt, wordt er een lijst met suggesties weergegeven.Selecteer Create basic project als het type Solidity-project.
Gebruik het deelvenster Explorer om de map te zoeken die u in stap 1 hebt gemaakt. Selecteer de map. In de rechterbenedenhoek van het venster ziet u Creating new project.
Als het Solidity-project is gemaakt, opent u het deelvenster Explorer om de bestanden van het project weer te geven.
Het project bevat boilerplate voor de Solidity-code. De volgende mappen zijn van belang:
- contracten: Bevat het HelloBlockchain.sol-contract
- migraties: Bevat een migratie voor het HelloBlockchain-contract dat is geschreven in JavaScript
- test: Bevat een test voor het HelloBlockchain-contract dat is geschreven in JavaScript
U ziet ook enkele configuratiebestanden:
- package.json: Projectdetails en afhankelijkheden definiëren
- truffle-config.json: Afhankelijkheden en configuratie voor Truffle definiëren
Als u de werkruimte wilt opslaan, gaat u naar File>Save Workspace As. Geef de werkruimte de naam newSolidityProject.
Nu gaan we terug naar het project zelf. Als eerste bespreken we de map contracts.
De contracten compileren
We beginnen met het slimme contract HelloBlockchain.sol in de map contracts.
Klik in het deelvenster Explorer, in de map contracts, met de rechtermuisknop op de naam van het contract, HelloBlockchain.sol.
Selecteer Build Contracts om het slimme contract te compileren. Een venster in de rechterbenedenhoek geeft aan dat er contracten worden gecompileerd.
Selecteer Weergave ->Uitvoer om informatie over het gecompileerde contract weer te geven. In het venster moet u mogelijk Truffle voor VS Code selecteren om de uitvoer van de extensie weer te geven.
Contracten implementeren
Nadat het contract is gecompileerd, kunt u het lokaal implementeren
Ga in het deelvenster Explorer naar de map contracts en klik met de rechtermuisknop op de naam van het contract, HelloBlockchain.sol.
Selecteer Deploy Contracts.
In het uitvoervenster (View ->Output) ziet u informatie over de geïmplementeerde migraties en contracten.
Hier ziet u enkele belangrijke gegevens (metagegevens) van uw geïmplementeerde contract:
- Het adres van het contract.
- Het tijdstempel van het blok waarvan de transactie voor het maken van het contract deel uitmaakt.
- Het adres van het account dat het contract heeft geïmplementeerd.
- Het saldo van het account (in ether) na de transactie. Het saldo is 100 ETH (de standaardwaarde waarmee u begint), min de totale kosten.
- De hoeveelheid gebruikte gas en de prijs van het gas.
Gas verwijst naar de kosten voor het uitvoeren van een transactie of een contract op het Ethereum-platform. U kunt het zien als de brandstof die u nodig hebt voor uw auto. Totale kosten = gas price * gas use.
Notitie
Gasprijzen worden uitgedrukt in gewei. Eén gwei is gelijk aan 0,000000001 ETH.