Desafio Solidity: Implementação de um Token
Objetivo
O objetivo deste desafio é implementar um contrato de token que siga a interface fornecida. Este exercício ajudará a entenderem melhor os conceitos de Solidity, como interfaces, eventos, e funções de leitura e escrita.
Interface do Token
A interface IToken
define os métodos que o contrato de token deve implementar. Abaixo está a interface que vocês devem seguir:
Requisitos
Nome e Símbolo do Token:
O token deve ter um nome (
name
) e um símbolo (symbol
).
Total Supply:
O token deve ter um total de tokens emitidos (
totalSupply
).
Saldo de Tokens:
Cada endereço pode possuir um saldo de tokens (
balanceOf
).
Transferência de Tokens:
Deve ser possível transferir tokens de um endereço para outro (
transfer
).
Evento de Transferência:
O contrato deve emitir um evento
Transfer
sempre que uma transferência de tokens for realizada.
Tarefas
Entender a Interface:
Compreender os métodos definidos na interface
IToken
.
Implementar o Contrato:
Implementar o contrato
MyToken
que segue a interfaceIToken
.
Testar o Contrato:
Testar o contrato.
Verificar se os métodos de leitura (
totalSupply
,getName
,getSymbol
,balanceOf
) funcionam corretamente.Realizar transferências de tokens e verificar se o evento
Transfer
é emitido corretamente.
Checklist para Verificação
Conformidade com a Interface: O contrato deve implementar todos os métodos definidos na interface
IToken
.Corretude: O contrato deve funcionar conforme esperado, sem erros ou bugs.
Eventos: O evento
Transfer
deve ser emitido corretamente durante as transferências de tokens.Código Limpo: O código deve ser bem organizado e comentado, seguindo as melhores práticas de programação Solidity.
Boa sorte com o desafio! Este exercício irá ajudá-los a dominar os conceitos fundamentais de Solidity e a prática de implementação de contratos inteligentes.