Solidity é a linguagem de programação usada por contratos inteligentes na blockchain Ethereum. É uma linguagem de programação orientada a objetos com tipagem estática.
O Solidity usa um esquema de controle de versão semântico e, no momento em que este artigo foi escrito, a versão mais recente é 0.8.9. Como você pode ver, a linguagem usa um formato de controle de versão XYZ semântico, que indica o quão rápido são suas mudanças.
Linguagens de programação como C ++ e JavaScript inspiraram a linguagem Solidity. Neste guia, você verá como escrever e compilar seu primeiro contrato inteligente.
O Editor de Remix
Existem muitos editores de texto e compiladores que você pode usar para escrever o código do Solidity, mas o mais fácil é o Remix . Remix é um IDE online que permite escrever e depurar seu código Solidity. Quando você visitar o Remix pela primeira vez, deverá ver uma página de destino semelhante a esta abaixo.
Escrevendo seu primeiro contrato inteligente
Primeiro, clique no ícone Criar novo arquivo na guia Exploradores de arquivos. O ícone parece uma página de papel com um canto dobrado. Nomeie o novo arquivo helloWorld.sol . Use a extensão .sol para mostrar que o arquivo contém o código do Solidity.
Agora você pode copiar o código abaixo para o seu novo arquivo. Uma explicação para cada linha segue abaixo.
// SPDX-License-Identifier: GPL-3.0 pragma solidity ^0.8.1; contract FirstContract { uint var1; function set(uint x) public { var1 = x; } function get() public view returns (uint) { return var1; } }
A primeira linha mostra a licença sob a qual alguém pode usar e distribuir o software. O código no exemplo acima usa a GPL versão 3.0 . Você pode substituí-la por qualquer outra licença, como a licença MIT .
A segunda linha mostra uma diretiva pragma que diz ao compilador para usar qualquer versão do Solidity de 0.8.1 a 0.9.0, mas não incluindo 0.9.0. Ou seja,> = 0.8.1 a <0.9.0. = "">
Também é importante incluir esta linha para evitar incompatibilidade entre o seu código e a versão do compilador.
Relacionado: O que é solidez e como ela é usada para desenvolver contratos inteligentes?
Normalmente, há pequenas alterações, ou patches, nas versões xy Z. As mudanças de ruptura estão normalmente presentes em x. Versões Y .z. É por isso que a diretiva pragma não inclui a versão 0.9.0 no código acima.
Solidity é uma linguagem orientada a objetos. A palavra-chave de contrato na linha quatro é semelhante em uso à palavra-chave de classe em outras linguagens orientadas a objetos.
Os contratos podem conter funções, variáveis de estado e outros tipos avançados. O contrato FirstContract contém um inteiro não assinado ( unidade ) chamado var1 .
As duas funções chamadas set () e get () são funções setter e getter, respectivamente, para a variável var1 . Você pode definir uma função com a palavra-chave function seguida pelo nome da função e parênteses.
Entre parênteses, você pode declarar os parâmetros que sua função assumirá. Você deve escrevê-los de maneira semelhante às definições de variáveis: indique o tipo de dados seguido pelo nome do parâmetro.
Relacionado: O que é Monero e como ele protege sua privacidade?
Observe que as definições das funções set () e get () contêm a palavra-chave public . Este declara que qualquer outro contrato pode chamá-los.
Compilar e implantar
Para compilar seu código, clique no botão Compilador Solidity . Quando você passa o mouse sobre os botões do lado esquerdo do editor, deve ser capaz de ver o nome do botão.
Agora clique no botão que diz Compile helloWorld.sol . Se o compilador não encontrar nenhum erro, você terá compilado com sucesso seu primeiro contrato inteligente.
Para implementar seu código, clique no botão Implementar e executar transações . Este botão está logo abaixo do botão do compilador Solidity no menu à esquerda. Enquanto estiver nesta página, certifique-se de que o nome do seu contrato seja exibido corretamente acima do botão Implementar .
Depois de confirmado, você pode clicar em Implementar para executar seu código na rede de teste local atual, sem taxas de transação.
Criação de DApps na rede Ethereum
Depois de aprender como criar contratos inteligentes, sua próxima parada deve ser aprender a criar aplicativos descentralizados (DApps). Esses são aplicativos baseados em blockchain que são executados em uma rede sem permissão. Essa é a beleza dos contratos inteligentes da Ethereum.
Você terá a capacidade de criar aplicativos P2P poderosos no Ethereum.