Informazioni su Solidity

Completato

Solidity è un linguaggio orientato a oggetti per la scrittura di contratti intelligenti.

I contratti intelligenti sono programmi archiviati all'interno di una blockchain. Specificano le regole e il comportamento per la modalità di trasferimento degli asset digitali. Solidity consente di programmare contratti intelligenti per la piattaforma blockchain Ethereum. I contratti intelligenti contengono lo stato e la logica programmabile. Le transazioni comportano l'esecuzione di funzioni nei contratti intelligenti. I contratti intelligenti consentono così di creare un flusso di lavoro aziendale.

Panoramica

Solidity è il linguaggio di programmazione più diffuso per la blockchain Ethereum.

Solidity è un linguaggio di alto livello basato su altri linguaggi di programmazione, tra cui C++, Python e JavaScript. Se si conosce uno qualsiasi di questi linguaggi, il codice Solidity risulterà familiare.

Solidity è tipizzato in modo statico, il che significa che il controllo del tipo avviene in fase di compilazione, non in fase di esecuzione come per i linguaggi tipizzati in modo dinamico. Con un linguaggio tipizzato in modo statico, è necessario specificare il tipo di ogni variabile. Python e JavaScript, ad esempio, sono linguaggi tipizzati in modo dinamico, mentre C++ è tipizzato in modo statico.

Solidity supporta l'ereditarietà, il che significa che le funzioni, le variabili e altre proprietà presenti in un contratto possono essere usate in un altro contratto. Il linguaggio supporta anche tipi complessi definiti dall'utente, ad esempio struct ed enumerazioni, che consentono di raggruppare i tipi di dati correlati.

Solidity è un linguaggio di programmazione open source con una community di collaboratori in continua crescita. Per altre informazioni sul progetto Solidity e su come contribuire, vedere il repository GitHub.

Che cos'è Ethereum?

Prima di procedere, è consigliabile acquisire familiarità con Ethereum.

Ethereum è una delle piattaforme blockchain più popolari, subito dopo Bitcoin. Si tratta di una tecnologia creata dalla community con una propria criptovaluta denominata Ether (ETH) che è possibile acquistare e vendere.

L'unicità di Ethereum è legata al fatto che si tratta della "blockchain programmabile più diffusa al mondo". Con Ethereum è possibile scrivere codice per le definizioni di contratti, note anche come contratti intelligenti. I contratti intelligenti vengono usati per descrivere come i partecipanti della blockchain trasferiscono gli asset digitali. Solidity è il linguaggio di programmazione principale usato per lo sviluppo nella piattaforma Ethereum ed è creato e gestito dagli sviluppatori Ethereum.

Macchina virtuale Ethereum

I contratti di Solidity vengono eseguiti sulla macchina virtuale Ethereum o EVM (Ethereum Virtual Machine). Si tratta di un ambiente sandbox completamente isolato. Non viene eseguito l'accesso ad alcun elemento nella rete al di fuori dei contratti eseguiti. Per il momento non è necessario sapere molto altro sulla macchina virtuale Ethereum, ma tenere presente che i contratti intelligenti Solidity verranno distribuiti ed eseguiti in un ambiente virtuale.