Come creare uno smart contract su Ethereum con Solidity

1 lug 2023 1 min di lettura
Come creare uno smart contract su Ethereum con Solidity
Indice dei contenuti

Introduzione

Questo tutorial ti guiderà attraverso il processo di creazione di un semplice smart contract su Ethereum utilizzando Solidity, il linguaggio di programmazione per la scrittura di smart contract su Ethereum.

Prerequisiti

Per seguire questo tutorial, avrai bisogno di:

  • Node.js e NPM installati sul tuo sistema
  • Truffle Suite, un ambiente di sviluppo, un framework di test e una pipeline di asset per Ethereum
  • Ganache, un simulatore di blockchain personale per Ethereum

Puoi installare Truffle e Ganache con il comando npm:

npm install -g truffle
npm install -g ganache-cli

Creazione del progetto

Iniziamo creando una nuova directory per il nostro progetto e inizializziamo un nuovo progetto Truffle.

mkdir ethereum-contract
cd ethereum-contract
truffle init

Scrivere lo Smart Contract

Creiamo un nuovo file chiamato SimpleStorage.sol nella directory contracts/ e aggiungiamo il seguente codice:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract SimpleStorage {
    uint public data;

    function set(uint x) public {
        data = x;
    }

    function get() public view returns (uint) {
        return data;
    }
}

Questo è un contratto molto semplice che memorizza un numero intero e fornisce due funzioni, set e get, per modificare e ottenere il valore.

Creazione del file di migrazione

Per distribuire il contratto sulla blockchain, dovrai creare un file di migrazione. Crea un nuovo file chiamato 2_deploy_contracts.js nella directory migrations/ e aggiungi il seguente codice:

const SimpleStorage = artifacts.require("SimpleStorage");

module.exports = function (deployer) {
  deployer.deploy(SimpleStorage);
};

Testare il contratto

Prima di distribuire il contratto, dovremmo scriverne alcuni test. Crea un nuovo file chiamato simpleStorage.js nella directory test/ e aggiungi il seguente codice:

const SimpleStorage = artifacts.require('SimpleStorage');

contract('SimpleStorage', () => {
  it('should set the value of data variable', async () => {
    const simpleStorage = await SimpleStorage.deployed();
    await simpleStorage.set(10);
    const result = await simpleStorage.get();
    assert(result.toNumber() === 10);
  });
});

Esegui i test con il comando:

truffle test

Distribuire il contratto

Per ultimo, distribuiamo il contratto sulla nostra blockchain locale utilizzando Ganache. Esegui il comando:

ganache-cli

In un altro terminale, esegui il comando di migrazione:

truffle migrate

Conclusione

Congratulazioni! Hai appena scritto e distribuito il tuo primo smart contract su Ethereum con Solidity.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.