WEB3DEV

Cover image for Por que o Sandbox é indispensável para construir dApps?
junowoz
junowoz

Posted on • Atualizado em

Por que o Sandbox é indispensável para construir dApps?

Artigo escrito pelo Chris Kim em 19 de Agosto de 2022. Extraído da Algorand e traduzido para o português por Juan José Gouvêa.
Leia o texto original aqui.

Introdução

Construir um dApp é complexo, especialmente para aqueles que nunca antes construíram em uma blockchain. Após finalizar este artigo, você entenderá completamente por que o Sandbox é indispensável para construir um dApp na ​​Algorand, como aproveitá-lo totalmente e, finalmente, tornar seu desenvolvimento de dApps no ​​Algorand um passeio no parque.

Iremos abordar os seguintes tópicos:

  • O que é Sandbox?
  • Por que precisamos do Sandbox?
  • Como eu configuro o Sandbox ao criar dApps.

Sumário

1 . Introdução

2 . O que é Sandbox

3 . Conectando a um nó Algorand
..... . EXECUTE SEU NÓ DA ALGORAND
..... . USAR SERVIÇOS DE NÓ DE TERCEIROS
..... . USAR SANDBOX

4 . Interagindo com um nó Algorand

5 . Conectando diferentes redes Algorand

6 . Consultando o histórico do blockchain

7 . Depurando seu contrato inteligente

8 . Como eu configuro o Sandbox ao criar dApps

9 . Conclusão


O que é Sandbox?

Sandbox é a maneira mais fácil de configurar um ambiente de desenvolvimento da Algorand. Você usará o Sandbox para se conectar a várias redes Algorand que atendam às suas necessidades, gerenciar contas, interagir com contratos inteligentes, consultar o blockchain e depurar seu código.

Todas estas funções são muito importantes ao desenvolver dApps, e todas elas vêm empacotadas dentro do Sandbox.


Por que precisamos do Sandbox?

Para entender por que precisamos do Sandbox, vamos comparar como é o processo de desenvolvimento do dApp com e sem o Sandbox.

Conectando a um nó Algorand

Ao desenvolver um dApp, você precisa ser capaz de interagir com o blockchain da Algorand para executar e testar seu código, e você faz isso conectando-se a um nó da rede. Existem duas maneiras de se conectar a um nó da Algorand sem o Sandbox.

EXECUTE SEU NÓ DA ALGORAND

Executar seu nó da Algorand fornecerá mais controle, mas requer aprender como configurá- lo, esperar várias horas ou dias para que o nó alcance o bloco mais recente e garantir que o mesmo permaneça atualizado durante todo o período de desenvolvimento. Esse método requer muito esforço para a maioria dos desenvolvedores de contratos inteligentes.

USAR SERVIÇOS DE NÓ DE TERCEIROS

O uso de serviços de nó de terceiros permitirá que você se conecte a redes públicas da Algorand imediatamente, mas há muitas limitações. A maioria dos serviços tem uma quantidade limitada de transações por dia, o que limitaria a quantidade de testes que você pode fazer. Além disso, se o nó for desativado, você não poderá continuar construindo até que o nó seja restaurado ou encontre outro nó em funcionamento. Em resumo, configuração rápida, mas com limitações.

USAR SANDBOX

Alguns preferem os métodos acima, mas podem ser muito difíceis ou inadequados ao desenvolver dApps. É aí que entra o Sandbox. Com o Sandbox, você pode se conectar a todas as redes Algorand disponíveis com uma única linha de comando no terminal. (Saiba como iniciar o Sandbox aqui) Você pode começar diretamente a construir sua dApp em questão de minutos.

Observação
Sandbox é geralmente usado para desenvolvimento, não para produção. Executar seu nó ou usar serviços de nó de terceiros é ideal para aplicativos de produção na Mainnet.

Interagindo com um nó Algorand

Sandbox não apenas permite que você se conecte a um nó da Algorand, mas também permite que você interaja com ele. Você simplesmente usaria comandos goal dentro do Sandbox ou SDKs da Algorand para enviar e gerenciar ALGO / ASAs ou aplicativos de chamada.

Agora vamos ver como é interagir com Algorand sem o Sandbox: Você ainda usaria comandos goal para interação, mas primeiro, você precisaria instalar e configurar seu nó Algorand e configurar o diretório binário da Algorand para usar o comando goal. Como vemos, não é tão ideal, sendo que você poderia apenas usar o comando goal ou SDKs da Algorand imediatamente com Sandbox.

Observação
Para ver como interagir com um nó da Algorand usando SDKs da Algorand, confira o repositório de exemplos.

Gerenciando chaves e contas

Ao criar dApps, você precisa gerenciar várias contas para simular o uso típico de seu aplicativo. O Key Management Daemon (kmd) da Algorand é uma carteira integrada que permite criar e excluir contas (ou chaves privadas). Assim como goal, você precisará configurar seu nó da Algorand se quiser usar kmd sem Sandbox.

Conectando diferentes redes Algorand

Durante o desenvolvimento, você quererá se conectar a uma rede privada e depois a redes públicas com base em seu estágio de desenvolvimento. Existem três redes públicas diferentes da Algorand:

- Mainnet
- Betanet
- Testnet

Saiba mais sobre essas redes aqui.

Além disso, o Sandbox fornece o modo de desenvolvedor: um blockchain privado local que permite construir em um ambiente privado e seguro. Essa é uma das razões mais importantes pelas quais o uso do Sandbox ao desenvolver dApps é essencial, pois permite solucionar bugs e fazer testes locais antes de implantar seus contratos em redes públicas.

Com o Sandbox, você pode alternar facilmente entre essas redes ou o modo de desenvolvimento sempre que quiser. No entanto, não é tão fácil sem o Sandbox. Você precisará configurar manualmente seu nó da Algorand toda vez que quiser trocar de rede.

Consultando o histórico do blockchain

E se o seu dApp exigir a consulta de registros de blockchain? Nesse caso, você precisará usar um indexador no Algorand. O Indexador não faz parte do nó da Algorand, portanto, se você decidiu configurar seu nó ao criar seu dApp, também precisará baixar e instalar o Indexador separadamente.

O Sandbox fornece um processo de configuração integrado para o indexador, tornando esse requisito trivial de ser alcançado.

Depurando seu contrato inteligente

As ferramentas de depuração são as melhores amigas de um desenvolvedor, e não é diferente para desenvolvedores de dApps. A depuração de contratos inteligentes pode ser difícil, especialmente quando você precisa interagir com a blockchain toda vez que quiser testar seu código. É aqui que o Sandbox brilha, pois fornece o depurador do programa teal (tealdbg), permitindo que você teste em um ambiente controlado, fora da cadeia ou até mesmo na cadeia.

O Sandbox permite realizar as seguintes funções:

  • Conexão a um nó Algorand
  • Interação com Algorand usando goal
  • Gerenciamento de chaves com kmd
  • Acesso a diferentes redes Algorand
  • Consulta de registros Algorand com o indexador
  • Depuração seu código de contrato inteligente com o Tealdbg

Não há como voltar agora. 👑


Como eu configuro o Sandbox ao criar dApps

Lembro-me de vasculhar o portal do desenvolvedor tentando descobrir como configurar meu ambiente de desenvolvedor para que eu pudesse começar a construir. Aqui está como eu configurei o Sandbox apenas como uma referência rápida:

Atalho do sandbox

Para iniciar o Sandbox, você precisa estar no seu diretório do sandbox. Isso pode ser complicado, então adicionei um alias editando o arquivo ~/.zhrc. Você pode editar o arquivo ~/.zhrc com nano ~/.zhrc

Observação
Estou usando o Zsh. Se você estiver usando o Bash, tente nano ~/.bashrc

Aponte “sb” para o caminho do shell script do sandbox em qualquer lugar que desejar dentro do arquivo ~/.zshrc:

alias sb="/Users/chris/Documents/sandbox/sandbox"

Observação
Certifique-se de apontá-lo para o diretório de script de shell do sandbox e não apenas para a pasta do Sandbox.

Está tudo pronto! Agora, em vez de fazer ./sandbox up apenas dentro do seu diretório Sandbox, você pode fazer sb up onde quer que esteja no terminal.

Ambiente de desenvolvimento

Antes de começar a codificar, aqui está o que eu configurei.

Inicie o Sandbox no modo desenvolvedor fazendo sb up dev no terminal.

Observação
Eu sempre começo com o modo de desenvolvedor porque você pode ativar um blockchain privado localmente em sua máquina e fazer verificações e testes rápidos ao longo do seu desenvolvimento. Além disso, o modo de desenvolvedor só irá gerar um novo bloco quando uma transação for submetida e confirmada, o que é útil para vários tipos de teste e depuração. Especificar as configurações após o sb up permite que você se conecte a redes diferentes usando os arquivos de configuração definidos aqui.

Vincule o Dappflow ao seu Sandbox acessando as configurações e selecionando “Sandbox” e “Save” como na Figura 1.0.


Figura 1.0 - Conectar Sandbox no Dappflow<br>
Figura 1.0 - Conectar Sandbox no Dappflow

Observação
Dappflow é um explorador de blockchain privado com uma interface de usuário fácil de entender. Você pode ver todas as transações, contas, ativos e aplicativos criados durante o desenvolvimento.


Figura 1.1 - Página inicial do Dappflow<br>
Figura 1.1 - Página inicial do Dappflow

É isso! Com o Sandbox, você pode configurar seu ambiente de desenvolvimento de dApp, que provavelmente é uma das partes mais confusas e envolvidas na criação de um dApp, em alguns minutos.


Conclusão

Com o Sandbox, você poderá construir rapidamente e sem esforço. Espero que este artigo esclareça por que o Sandbox é indispensável ao construir dApps no Algorand.

Se você tiver alguma dúvida, participe do Discord do Desenvolvedor Algorand. Se você quiser se manter atualizado com o desenvolvimento da Algorand, siga @algodevs no Twitter.

Oldest comments (0)