Smart contract su blockchain Ethereum

Smart contract su blockchain Ethereum

In questo post vedremo rapidamente ma nel modo più completo possibile, come deployare uno smart contract su blockchain Ethereum.

Iniziamo con lo spiegare cosa faremo.
Pubblicheremo uno smart contract, cioè del codice di programmazione, sulla blockchain Ethereum. Questo codice farà qualcosa di molto semplice, cioè ci permetterà di leggere e scrivere sulla blockchain.

Sia per scrivere che per pubblicare il codice sulla rete Ethereum, abbiamo bisogno di un solo strumento, cioè l’IDE Remix. Remix mette a disposizione anche un browser IDE raggiungibile a questo indirizzo: remix.ethereum.org

Ciò che vedremo appena aperto l’IDE è la seguente schermata.

Sulla sinistra possiamo vedere la struttura del codice organizzata per cartelle.
A noi interessa la cartella “contracts” che contiene i contratti scritti in linguaggio solidity che possiamo deployare sulla rete.

Come potete vedere, sono già presenti 3 esempi di contratto, e noi prenderemo in considerazione il primo esempio cioè “1_Storage.sol”.
Di seguito il codice in solidity.

pragma solidity >=0.7.0 <0.9.0;

/**
 * @title Storage
 * @dev Store & retrieve value in a variable
 */
contract Storage {

    uint256 number;

    /**
     * @dev Store value in variable
     * @param num value to store
     */
    function store(uint256 num) public {
        number = num;
    }

    /**
     * @dev Return value 
     * @return value of 'number'
     */
    function retrieve() public view returns (uint256){
        return number;
    }
}

Non essendo questo un tutorial su Solidity non scenderemo nel dettaglio del codice, per adesso limitiamoci a vedere come la function “store”, scriva un numero intero e la function “retrieve” invece, esegua un return dello stesso numero intero.

 

COMPILARE

Dopo di ciò, cliccheremo sulla seconda icona del menu principale che si trova in alto a sinistra, come mostrato in figura.

Qui cliccare sul grande pulsante “Compile”, per compilare il codice solidity da deployare.

 

DEPLOY

Successivamente cliccare sulla terza icona (deploy and run transactions).

Cliccando sul pulsante “Deploy”, ovviamente deployeremo il codice solidity appena compilato, sulla rete blockchain di test.

Come potete notare, più in basso è presente una interfaccia che l’IDE genera in automatico dal codice deployato. Crea infatti nel nostro caso, un bottone per eseguire la function “store”, cioè per scrivere, e uno per eseguire la function “retrieve”, cioè per leggere quanto scritto.
Se infatti, dopo aver deployato, useremo lo “store” per scrivere un numero intero, successivamente cliccando su “retrieve”, nella console in basso, potremo leggere un file json al cui interno è presente il dato scritto precedentemente.

Stefano MeloniBy Stefano MeloniLuglio 12, 2021