SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
12.11.2024

Lição 003: O que é Ethereum?

Ethereum é uma plataforma de blockchain descentralizada e de código aberto que permite que desenvolvedores construam e implantem contratos inteligentes e aplicações descentralizadas (dApps). Criado por Vitalik Buterin e lançado em 2015, o Ethereum introduziu o conceito de blockchain programável, que revolucionou a maneira como as pessoas podem criar aplicações em redes distribuídas.

Principais Características do Ethereum

  1. Contratos Inteligentes: Diferente dos contratos tradicionais que têm força legal, os contratos inteligentes são contratos autoexecutáveis com os termos do acordo diretamente escritos em código. Eles são armazenados e executados na blockchain do Ethereum, garantindo transparência e segurança.

  2. Descentralização: O Ethereum opera em uma rede descentralizada de nós, o que significa que não há um único ponto de controle ou falha. Isso promove segurança e confiança entre os usuários.

  3. Ether (ETH): O Ether é a criptomoeda nativa da plataforma Ethereum. Ele é usado para pagar taxas de transação e serviços na rede. O ETH também pode ser utilizado como um ativo digital.

  4. Máquina Virtual Ethereum (EVM): A EVM é o ambiente de execução para contratos inteligentes na blockchain do Ethereum. Ela permite que desenvolvedores construam aplicações em um ambiente isolado, proporcionando segurança e proteção.

  5. Aplicações Descentralizadas (dApps): As dApps são aplicações que rodam na blockchain do Ethereum. Elas utilizam contratos inteligentes para diversas funcionalidades e podem ser desde jogos até plataformas financeiras.

Como o Ethereum Funciona

No seu cerne, o Ethereum permite que os desenvolvedores escrevam códigos que expressam diferentes funcionalidades e executem esses códigos de forma segura na blockchain. Aqui está uma visão geral da arquitetura do Ethereum:

  • Nós: Nós são computadores que participam da rede Ethereum. Eles validam transações e mantêm uma cópia de toda a blockchain.

  • Blockchain: A blockchain do Ethereum é uma série de blocos contendo transações. Cada bloco está vinculado ao anterior, formando uma cadeia.

  • Mecanismo de Consenso: Atualmente, o Ethereum utiliza um mecanismo de consenso chamado Prova de Trabalho (PoW), que irá transitar para Prova de Participação (PoS) com o Ethereum 2.0. Esse mecanismo garante que todos os participantes da rede concordem com o estado da blockchain.

Escrevendo um Contrato Inteligente Simples

Para ilustrar como o Ethereum funciona, vamos escrever um contrato inteligente simples em Solidity — a linguagem de programação mais popular para contratos inteligentes do Ethereum.

Aqui está um exemplo de um contrato simples que armazena e recupera um número:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract SimpleStorage {
    uint256 private storedNumber;

    // Função para armazenar um número
    function store(uint256 number) public {
        storedNumber = number;
    }

    // Função para recuperar o número armazenado
    function retrieve() public view returns (uint256) {
        return storedNumber;
    }
}

Explicação do Código

  1. Identificador de Licença SPDX: A primeira linha indica o tipo de licença para o contrato inteligente.

  2. Pragma de Versão: pragma solidity ^0.8.0; especifica a versão do compilador Solidity a ser utilizada.

  3. Declaração do Contrato: contract SimpleStorage define um novo contrato inteligente denominado SimpleStorage.

  4. Variável de Estado: uint256 private storedNumber; declara uma variável privada que irá armazenar o número.

  5. Função Store: A função store permite que os usuários definam um número. Ela possui visibilidade pública, o que significa que pode ser chamada de fora do contrato.

  6. Função Retrieve: A função retrieve retorna o número armazenado. Ela utiliza o modificador view para indicar que não modifica o estado.

Implantando o Contrato Inteligente

Para implantar este contrato inteligente na rede Ethereum, os desenvolvedores podem utilizar ferramentas como Remix, Truffle ou Hardhat. Aqui está um processo simples de implantação usando o Remix:

  1. Abra Remix.
  2. Crie um novo arquivo e cole o código do contrato inteligente.
  3. Compile o contrato usando a aba do compilador.
  4. Mude para a aba "Deploy & Run Transactions".
  5. Selecione o ambiente (para testes, escolha "JavaScript VM").
  6. Clique em "Deploy".

Uma vez implantado, você pode interagir com o contrato utilizando a interface fornecida pelo Remix.

Conclusão

Ethereum transformou a maneira como pensamos sobre aplicações e contratos na era digital. Ao permitir contratos inteligentes e aplicações descentralizadas, o Ethereum fornece uma estrutura flexível e segura para construir soluções inovadoras. À medida que você se aprofunda no Ethereum e em suas capacidades, encontrará muitos outros recursos, ferramentas e ecossistemas que expandem esse conhecimento fundamental.

Video

Did you like this article? Rate it from 1 to 5:

Thank you for voting!