O que é Solidity?
Solidity é a linguagem de programação que vamos escrever os contratos inteligentes.
Um contrato inteligente é um acordo automático registrado na blockchain que garante que as ações ocorrerão conforme planejado.
Para quem já é desenvolvedor, um contrato inteligente semelhante a uma API e a blockchain é semelhante a uma cloud. Então nós vamos escrever os contratos inteligentes com solidity, compilar eles e fazer o deploy em alguma blockchain.
Durante o curso, ensinarei como executar uma blockchain em sua máquina local para testar seus contratos inteligentes. Além disso, você irá fazer o deploy dos contratos inteligentes numa blockchain "real". Eu coloquei "real" entre aspas porque, mesmo que a blockchain seja real, utilizaremos uma testnet, ou seja, faremos os testes nessa blockchain utilizando tokens (ou criptomoedas) de teste.
O que é Hardhat?
Hardhat é um framework que axulia no desenvolvimento em Solidity com JavaScript. Sendo assim, iremos escrever os contratos inteligentes com Solidity, porém toda vez que quisermos testar estes contratos, usaremos a linguagem JavaScript e o ambiente Node para rodar as blockchains.
Sugestão: se você não gosta de JavaScript ou quer tentar algo diferente, sugerimos que use o Foundry, ele é semelhante ao Hardhat mas em vez de usar JavaScript ele usa Rust.
Vamos começar!
Primeiro você vai criar uma pasta chamada x-smart-contracts
e vai abrir ela no VSCode.
Agora, você vai abrir o terminal e digitar o comando npm install --save-dev hardhat
para instalar o hardhat no seu computador.
Depois disso, você vai iniciar um projeto Hardhat do zero com o comando npx hardhat
e vai apertar enter
em todas as perguntas que aparecer. Agora, você vai rodar o seguinte comando para instalar as dependências necessárias para rodar o projeto:
npm install --save-dev hardhat @nomicfoundation/hardhat-toolbox
Agora é só rodar os comandos npx hardhat compile
para compilar os contratos inteligentes do projeto gerado automaticamente e depois npx hardhat test
para rodar os testes que também foram gerados automaticamente.
Após fazer todas essas etapas, seu terminal do VSCode deve aparecer isso: