O que é o Solidity
O Solidity é uma linguagem orientada a objeto para escrever contratos inteligentes.
Contratos inteligentes são programas armazenados dentro de um blockchain. Eles especificam as regras e o comportamento de como os ativos digitais são transferidos. Você usa o Solidity para programar contratos inteligentes para a plataforma de blockchain Ethereum. Os contratos inteligentes contêm lógica programável e estado. As transações resultam em funções executadas em contratos inteligentes. Assim, os contratos inteligentes permitem que você crie um fluxo de trabalho empresarial.
Visão geral
O Solidity é a linguagem de programação mais popular para o blockchain Ethereum.
O Solidity é uma linguagem de alto nível baseada em outras linguagens de programação, incluindo C++, Python e JavaScript. Caso você conheça qualquer uma dessas linguagens, o código do Solidity vai parecer familiar.
O Solidity tem tipo estático, o que significa que a verificação de tipo ocorre em tempo de compilação, não em tempo de execução, como em linguagens com tipo dinâmico. Com uma linguagem de tipo estático, você precisa especificar o tipo de cada variável. Por exemplo, Python e JavaScript são linguagens de tipo dinâmico, enquanto C++ tem tipo estático.
O Solidity dá suporte à herança, o que significa que as funções, variáveis e outras propriedades presentes em um contrato podem ser usadas em outra. A linguagem também dá suporte a tipos complexos definidos pelo usuário, como structs e enums, que permitem agrupar tipos de dados relacionados.
O Solidity é uma linguagem de programação de software livre com uma comunidade crescente de colaboradores. Para saber mais sobre o projeto do Solidity e como contribuir, confira o repositório do GitHub.
O que é o Ethereum?
Antes de continuarmos, você também deve familiarizar-se com o Ethereum.
O Ethereum é uma das plataformas blockchain mais populares, logo atrás do Bitcoin. É uma tecnologia criada pela comunidade e tem a própria criptomoeda chamada de ETH (Ether ) que você pode comprar e vender.
O que torna o Ethereum exclusivo é que ele é o "blockchain programável do mundo". Usando o Ethereum, você pode codificar definições de contrato, também conhecidas como contratos inteligentes. Os contratos inteligentes são usados para descrever como os participantes do blockchain transferem ativos digitais. O Solidity é a principal linguagem de programação usada para desenvolvimento na plataforma Ethereum, que foi criada e mantida por desenvolvedores do Ethereum.
Máquina virtual do Ethereum
Os contratos do Solidity são executados na EVM, a máquina virtual do Ethereum. É um ambiente de área restrita completamente isolado. Ele não acessa nada mais na rede além dos contratos que executa. Você não precisa saber muito mais sobre EVM por enquanto, mas lembre-se de que os contratos inteligentes do Solidity serão implantados e executados em um ambiente virtual.