Embora a noção de um contrato inteligente remonte aos anos 90, a Ethereum foi a primeira plataforma a realizar seu potencial e eliminar a necessidade de terceiros em virtude de sua implementação.
Com o Ethereum no centro do palco, o mercado de contratos inteligentes cresceu de força em força e estima-se que cresça para um tamanho de mercado de US$ 8,3 bilhões até 2030 . Obviamente, com os contratos inteligentes sendo favorecidos em projetos em vários setores, não é de surpreender que os desenvolvedores de contratos inteligentes sejam bem pagos, dado esse aumento na demanda.
Falando nisso, a postagem do blog desta semana apresenta o tópico de contratos inteligentes, mas em uma linguagem para a qual a maioria dos desenvolvedores da Web pode achar fácil fazer a transição: estamos falando de Solidity.
Se você deseja aprender o desenvolvimento de contratos inteligentes, a escolha ideal envolve a seleção de uma linguagem popular, simples de aprender e que ofereça um ambiente de desenvolvimento de fácil acesso.
Por esse motivo, a maioria dos desenvolvedores de contratos inteligentes começa com Solidity e, para isso, o Remix Integrated Development Environment é a primeira ferramenta com a qual eles geralmente iniciam sua jornada de desenvolvimento web3 . Para a maioria, esta será a primeira vez que eles usam um ambiente de desenvolvimento, mas isso é feito sem esforço, pois o Remix IDE pode ser configurado em qualquer um dos navegadores populares.
Em um nível básico, é importante observar que cada contrato inteligente é um arquivo .sol em virtude da linguagem em que está escrito: Solidity. Além disso, a compilação do contrato exige que você selecione qual versão deseja usar. Ambas as tarefas de escrever e compilar seu contrato inteligente devem ser executadas antes de implantar seu contrato inteligente em uma Testnet ou Mainnet.
Falando nisso, é vital que você teste seu contrato inteligente em uma Testnet antes de implantá-lo na Mainnet. Ao usar o Remix, você pode usar o testnet Goerli ou Sepolia. No entanto, para isso, você precisará primeiro conectar sua carteira Web3 ao Remix - de preferência, usando a carteira Metamask.
Se você não tem ideia do que é um Testnet, pense nele como um ambiente onde você executa seu contrato usando fundos falsos enquanto avalia se seu contrato inteligente está pronto para o mundo real por meio de testes. Resumindo, é uma simulação de como o contrato inteligente funcionará antes de sua implantação na Mainnet.
Por fim, você precisa entender que todo contrato inteligente, uma vez implantado, é identificado por um endereço exclusivo. Obviamente, você pode mover fundos para dentro e para fora de seu contrato inteligente por meio de contas de usuário fictícias disponíveis no Remix. Além disso, você também deve aprender tudo o que puder sobre o pagamento de taxas de gás e como ele é deduzido de sua conta ao escrever e executar seu primeiro contrato inteligente.
Agora, se você deseja escrever e compilar seu primeiro contrato inteligente usando o Remix IDE, existem quatro ícones no painel de ícones que você deve aprender a usar:
Cada um desses quatro ícones representa diferentes funções sobre como usar o espaço de trabalho:
Selecionar File Explorer leva você ao espaço de trabalho padrão, conforme mostrado abaixo:
Você deve ser capaz de criar, modificar e excluir pastas e arquivos do Solidity aqui. Fazer upload de arquivos para o seu espaço de trabalho, bem como adicioná-lo a uma essência do Github, também são opções disponíveis.
O segundo ícone no painel é rotulado Pesquisar em arquivos e permite que você faça exatamente isso. Nesse caso, estamos procurando o termo de pesquisa 'máquina de venda automática' e, para o qual, os resultados aparecem abaixo.
Quanto a selecionar a opção do compilador Solidity, somos levados a uma tela, conforme a figura abaixo:
Aqui você pode selecionar a versão do compilador e o contrato que deseja compilar antes de clicar no botão azul, conforme mostrado acima.
Quanto ao ícone final no painel, ou seja, implantar e executar transações, abordaremos como usar esse ícone na próxima postagem do blog desta série.
Agora, várias linguagens de contrato inteligente populares têm sua sintaxe semelhante a JavaScript, Python e Rust - linguagens que já são populares entre desenvolvedores experientes.
No entanto, o que se destaca é o Solidity, pois a plataforma Ethereum continua a contratar desenvolvedores em um ritmo uniforme; portanto, é melhor começar nossa jornada com a implementação de um contrato inteligente de máquina de venda automática usando essa linguagem. Você pode copiar o código de contrato inteligente da máquina de venda automática desta página da Ethereum .
Deve-se ressaltar que o funcionamento de uma máquina de venda automática é muito semelhante ao funcionamento dos contratos inteligentes. Na verdade, os dois métodos 'reabastecer' e 'comprar', como você pode ver no contrato inteligente da máquina de venda automática, replicam as ações que o proprietário de uma máquina de venda automática e seus compradores realizam na vida real.
Agora, navegue até o seu espaço de trabalho selecionando o ícone 'File Explorer'. Abra um novo arquivo .sol usando o ícone Create New File, conforme mostrado abaixo:
Agora, cole o código do contrato inteligente da máquina de venda automática nesse arquivo junto com o SPDX-License-Identifier, conforme mostrado abaixo:
Depois disso, é hora de compilar seu primeiro contrato inteligente no Remix com base na versão do compilador selecionada na instrução “pragma”. Obviamente, a depuração de erros também fará parte desse processo.
Agora, depois de adicionar nosso código de contrato inteligente a um arquivo .sol em nosso espaço de trabalho padrão, a próxima etapa é depurar seu código. Como resultado de zero erros, você compilará o contrato inteligente antes de implantá-lo no Testnet.
Antes de começarmos, o atalho de teclado Ctrl + S compilará seu contrato inteligente. Agora, se a opção Solidity Compiler no painel de ícones tiver uma marca de seleção verde, seu código está pronto para implantação!
Claro, nem tudo sai como planejado. Na maioria dos casos, haverá erros que você terá que resolver antes de tentar compilar o código que escreveu. O ícone do Solidity Compiler será mais ou menos assim, onde '1' indica o número de erros em seu código:
Falando em erros comuns, os iniciantes tendem a não selecionar a versão correta do compilador que corresponda à escolhida na declaração pragma do contrato inteligente, conforme mostrado abaixo:
Para corrigir isso, acesse o menu suspenso na opção Solidity Compiler:
Altere a versão do compilador para “0.8.7+commit.e28d00a7”, para obter o seguinte resultado:
Outro erro comum envolve cometer erros de sintaxe, como o que envolve o mapeamento “cupcakeBalances”:
Se você ainda não percebeu, o ponto de exclamação vermelho dentro de uma caixa vermelha indica que a declaração contém um erro. Nesse caso, depois de corrigir o erro de digitação adicionando um “k” e pressionando Ctrl + S, esse sinal desaparece.
Com a resolução desses dois erros simples, você também encontrará uma marca verde aparecendo com o ícone do Solidity Compiler. Claramente, você compilou com sucesso seu primeiro contrato inteligente.
Agora, é hora de implantar seu contrato inteligente no Testnet, mas isso será abordado em uma futura postagem no blog.
Dito isso, estamos construindo um metaverso centrado no desenvolvedor para você aprender mais sobre desenvolvimento Web3 e desenvolver suas habilidades.
Inscreva-se para se juntar à lista de permissões do Lumos Metaverse para acesso exclusivo: