Reading

Smart Contract Development on Layer 1 EVM Blockchains

Curso: Desenvolvimento de Contratos Inteligentes em Blockchains EVM de Camada 1

Smart Contract Development on Layer 1 EVM Blockchains

Curso: Desenvolvimento de Contratos Inteligentes em Blockchains EVM de Camada 1

Introdução

83 Recursos | 204+ Horas

O desenvolvimento de Blockchains e aplicações descentralizadas (Dapps) está explodindo em popularidade, alguns até chamam isso de próximo paradigma disruptivo, ao lado da internet e dos telefones móveis. O Blockchain é uma nova tecnologia que funciona como um livro-razão digital descentralizado, gerenciado por pares. Ainda mais impressionante, ele resolve a questão (supostamente) insolúvel do “gasto duplo” usando uma abordagem descentralizada (vs. a abordagem convencional, centralizada, que envolve uma terceira parte confiável para monitorar todas as transferências) que requer que um problema criptográfico seja resolvido matematicamente dentro de um prazo determinado, isso é chamado de Prova de Trabalho (PoW) e isso garante que as transações sejam irreversíveis e finais. Centenas de moedas criptográficas (também conhecidas como criptomoedas) estão atualmente em circulação, sendo as mais difundidas o Bitcoin e o Ethereum. Além de serem apenas formas digitais de moeda, algumas também são plataformas e frameworks de desenvolvimento de Blockchain. Essa combinação levou a um poderoso crescimento e investimento neste domínio.

Algumas das plataformas de desenvolvimento de Blockchain mais proeminentes são Ethereum, Hyperledger (Fabric, Iroha, Sawtooth Lake), Multichain, Stellar, Dispatch e NEO. Para os propósitos deste caminho de aprendizado, o foco será na plataforma Ethereum, já que a grande maioria das 1.500 moedas digitais em circulação hoje são construídas em cima da fundação tecnológica do Ethereum.

Por que este curso?

Se você é um desenvolvedor ou gerente que tem curiosidade sobre todo esse movimento Blockchain, então este curso é uma ótima escolha para você! Este caminho de aprendizado fornecerá não apenas uma visão geral ampla da paisagem tecnológica do Ethereum, mas pode ser usado como um guia de referência à medida que você desenvolve tecnologia de ledger distribuído (ou seja, Blockchain) e aplicações descentralizadas. Muitos desses aprendizados serão transferíveis para outras plataformas Blockchain e podem servir como base para ajudar a alcançar seus objetivos de desenvolvimento.

 

Para quem é este curso?

Este curso é para engenheiros de software, cientistas da computação ou desenvolvedores de produtos que procuram aprender como construir aplicações descentralizadas (ou centralizadas) usando a tecnologia Blockchain. O resultado final pode ser um novo protocolo Blockchain, uma criptomoeda alternativa ou uma aplicação que funciona na pilha de tecnologia Ethereum. Idealmente, este curso é voltado para alguém com experiência prática em Java, C#, Golang ou Python, tem proficiência em Node.js, repositórios GIT ou sistemas similares de gerenciamento de código-fonte.

 

1.0 Introdução à Pilha de Aplicações Blockchain

1.1 Pilha de Aplicações Blockchain [45m]

Para ter sucesso como Desenvolvedores Blockchain, você precisará se familiarizar primeiro com a pilha de aplicações Blockchain. As camadas são:

  • A camada base é a camada de infraestrutura, onde ocorre a computação/armazenamento/rede/virtualização, isso pode ser interno ou usar uma solução Blockchain como Serviço (BaaS) estabelecida.
  • A próxima camada foca na rede e protocolo, decidindo que tipo de Blockchain você quer criar (sem permissão como Bitcoin ou Ethereum ou com permissão como R3), plataforma de desenvolvimento, algoritmo de consenso dos nós participantes da rede (por exemplo, Prova de Trabalho (PoW), Prova de Participação (PoS), híbrido, etc.)
  • A próxima camada é a camada de serviços que possibilita a operação da aplicação (uma camada acima) e estabelece as conexões com diferentes funções como Oráculos (API para dados do mundo real), contratos inteligentes, Multisignature (contrato de várias partes), Carteiras, Armazenamento de Arquivos Distribuídos e muito mais.
  • A camada final é voltada para o consumidor ou cliente, que é a camada de aplicação onde a lógica de negócios e a interação do usuário ocorrem, e isso requer o uso de diferentes linguagens de programação como C++, Python, Solidity e Java.

1.2 Interoperabilidade de Aplicações Descentralizadas [30m]

Cada tecnologia serve a um propósito específico, e é sempre uma boa ideia se familiarizar não apenas com sua contribuição para a pilha de aplicações, mas entender diferentes tecnologias interoperáveis.

1.3 Tabelas de Hash Distribuídas [10m]

Há uma quantidade tremenda de capital e financiamento aprovados e dedicados agora à infraestrutura e arquitetura de tecnologia cripto, e com razão, a canalização e fiação digital precisam ser estabelecidas antes que algo significativo possa ser produzido. Também é importante aprender sobre a autonomia, descentralização, tolerância a falhas e escalabilidade das tabelas de hash distribuídas (DHT).

1.4 Paisagem Tecnológica [30m]

Este mapa destaca algumas das aplicações proeminentes que funcionam em cima de múltiplos Blockchains, como as bolsas de criptomoedas onde moedas digitais estão sendo negociadas, soluções de processamento de pagamentos como Bitpay e Circle, e plataformas de emissão (por exemplo, produto que permite tokenizar ativos virtuais para permitir transferibilidade fácil).

Desenvolvedores de Blockchain são tipicamente responsáveis por projetar e construir soluções específicas da indústria usando tecnologia Blockchain, bem como liderar e contribuir para a configuração da infraestrutura Blockchain e desenvolvimento de soluções usando um framework proeminente. Além disso, eles devem entender os requisitos funcionais conforme aplicáveis à indústria alvo e convertê-los em especificações de sistema e usuário para desenvolvimento. Finalmente, eles devem definir abordagens de desenvolvimento, melhores práticas para implementar as soluções e documentar todos os frameworks de desenvolvimento e artefatos de design.

1.5 Estrutura Típica da Equipe de Aplicação Blockchain

É bom entender em qual posição você gostaria de focar primeiro, e enquanto você avalia em qual componente da pilha de aplicações Blockchain você vai contribuir, você pode ter uma visão de como essas construções funcionam. Geralmente falando, você teria:

  • Front End: focando na interface do usuário e experiência do usuário, isso envolveria usar HTML para desenvolvimento de produtos baseados na web, CSS Bootstrap para projetar os mockups fornecidos, e usar Javascript, jQuery, AngularJS para construir todas as interações entre o back-end (próxima camada abaixo) e a interface do usuário; essencialmente exibir as informações sendo produzidas no back-end, por exemplo, funcionalidade de pesquisa, ações por trás dos botões, etc.
  • Back End: isso envolveria configurar o servidor na nuvem, escrever APIs em Python, Node.js, Rails, construir o banco de dados em Mongo, Postgres, Cassandra para propriedades ACID, dito isso, em um mundo perfeitamente descentralizado, o Blockchain que você está usando seria, em última análise, seu banco de dados, portanto, o design do banco de dados será ditado pela necessidade de um ambiente centralizado vs. descentralizado vs. distribuído vs. híbrido. Essas APIs são, em última análise, críticas para gerenciamento de usuários (como inscrições, logins, logouts, sessões de navegador), a emissão e utilidade por trás dos tokens, uma API de explorador de blocos, se necessário, uma API de painel para extrair dados do banco de dados, gerenciamento de carteira API (para enviar e receber tokens, se aplicável), segurança e gerenciamento de permissões e criação de logs e análises para todos os eventos possíveis. logs/análises para todos os eventos.
    • Plataforma Blockchain: isso envolveria converter a entrada de dados em variáveis, criar código solidity, usando as variáveis e implantá-lo na rede Ethereum (seja o MainNet / Testnet) usando Solidity. Este pode ser o módulo mais complicado da solução.

 

2.0 Uma introdução a Plataformas e Frameworks de Desenvolvimento

Diferentes Plataformas Blockchain – Uma Breve Introdução [45m-10h]

Existem dezenas de frameworks de aplicações descentralizadas construídos em cima da tecnologia Blockchain, e cada um desses usa ou sua própria linguagem de programação ou criou uma linguagem de programação proprietária específica para essa plataforma. Alguns dos exemplos notáveis incluem: Ethereum, Lisk, Omni, NEO, Ardor, Qtum, Counterparty, Stellar, Waves, Bitshares, Ubiq, NXT e Waltonchain. Este artigo destaca algumas das plataformas e frameworks mais conhecidos sendo usados extensivamente hoje.

 

3.0 Uma introdução ao Ethereum

White Paper Original [5-10h]

Este é sempre o primeiro passo para o Ethereum, recomendo fortemente dedicar o máximo de tempo possível para ler isso em detalhes. Este é um documento vivo e respirável que é constantemente atualizado.

Como o Ethereum Funciona? [45-90m]

Eu recomendaria dedicar tempo para ler e entender completamente o conteúdo deste artigo. Ele é bem organizado e começa do início, explicando o que é um Blockchain, explica o paradigma do blockchain Ethereum e entra em detalhes exaustivos sobre confirmações de transações e planos de execução.

[Video] Quando Novas Tecnologias e Políticas Desatualizadas Colidem [20-40m]

O Centro para a Inovação na Governança Internacional (CIGI) é um think tank independente e apartidário sobre governança internacional, o trabalho interdisciplinar do CIGI inclui colaboração com comunidades políticas, empresariais e acadêmicas ao redor do mundo, e esta é uma entrevista conduzida pela Senior Fellow do CIGI, Julie Maupin, onde ela pede a Vitalik Buterin, fundador do Ethereum, para levantar a cortina sobre esta plataforma complexa e suas implicações de governança. Sua discussão abrange uma ampla gama de assuntos: a introdução de Buterin às criptomoedas; a criação do Ethereum; como o hardware — grande e pequeno — desempenha um papel no desenvolvimento futuro e adoção; e a iminente transição do Ethereum do modelo de “prova de trabalho” para “prova de participação”.

Vitalik agora passa muito menos tempo submetendo atualizações de código de programação e mais tempo na arquitetura do Ethereum, focando em propriedades, eficiência, simplicidade, privacidade e escalabilidade.

 

3.1 Introdução às Criptomoedas, Contratos Inteligentes e Aplicações Descentralizadas

Usando a tecnologia Blockchain, você pode criar criptomoedas (do zero ou bifurcando um repositório público de código existente), contratos inteligentes (executando regras automaticamente) e aplicações descentralizadas (programas sem um proprietário central ou um único ponto de falha) Se seu objetivo é criar uma nova criptomoeda e levantar capital usando uma oferta inicial de moeda (ICO), então seu processo de desenvolvimento dependerá de qual criptomoeda você gostaria de criar, o tipo de funcionalidade e recursos que você está procurando ter, as características do token ou moeda (ou seja, será minerável ou empilhável, qual algoritmo de consenso os nós operacionais terão que concordar, quais serão as regras de hashing, que tipo de mecanismo de distribuição de token estará em vigor, quais propriedades de criptoeconomia como medidas inflacionárias serão aplicadas no nível do protocolo. Há uma longa lista de ferramentas e tecnologias no Ecossistema Ethereum, e eu fiz o meu melhor para escolher algumas notáveis para ajudá-lo a embarcar nesta jornada emocionante.

 

3.2 Criptomoedas

Embora teoricamente, você possa usar qualquer linguagem de programação para criar uma criptomoeda ou um blockchain, as linguagens mais comuns são Go (Golang), C, C++, Java, Python, Perl e seria útil usar uma linguagem de programação amplamente suportada e que tenha uma comunidade de desenvolvimento ativa e próspera. A linguagem oficial na qual a Máquina Virtual Ethereum (EVM) é escrita é Go. Embora haja algumas implementações diferentes, o cliente Geth é o mais prevalente e Go também é a linguagem preferida para alguns outros grandes projetos, nomeadamente Cosmos. A beleza das criptomoedas é que você pode literalmente ter acesso a todos os scripts de programação de código aberto do Ethereum e criar sua própria moeda alternativa (altcoin) bifurcando o código original (se você gostaria de controle total sobre todos os aspectos), ou simplesmente emitir um token na rede Ethereum. É importante mencionar que atualmente, mais de 90% das criptomoedas são tokens ou ativos emitidos na plataforma Ethereum.

Whitepaper Original por Satoshi Nakamoto [2-4h]

Esta é a definição canônica do que é uma criptomoeda e fornece uma explicação sucinta de como funciona o Blockchain Bitcoin, modelo de incentivo em uso, como a privacidade é estabelecida e como árvores de Merkle são usadas para verificação de pagamento simplificada (conceito muito importante para várias criptomoedas).

3.2.1 Padrão de Token Ethereum

É importante que você primeiro se familiarize com Ethereum Request for Comments (ERC), que é o protocolo oficial para propor melhorias à rede Ethereum, sendo os mais comuns ERC20 e ERC23 (oficialmente conhecido como ERC223) para criar criptomoedas.

Definição de Token ERC20 [2h-3h]

Estas definem o conjunto de regras para tokens operando dentro desse ambiente. Este é um artigo importante para ler em profundidade, pois explica as regras da interface, o que um contrato de token faz, como estabelecer transferências de saldo e circulação de oferta de moedas/tokens

 

3.3 Contratos Inteligentes

Como o Ethereum é uma plataforma descentralizada construída usando tecnologia Blockchain, seu atributo mais conhecido é sua capacidade de executar contratos inteligentes. Contratos inteligentes são programas que funcionam exatamente como codificados e executarão automaticamente para satisfazer condições contratuais comuns, como garantias complicadas, termos de pagamento e execução de convênios. Solidity, que é baseado em Javascript, é a linguagem de programação oficial usada para codificar contratos inteligentes (no passado, Serpent, que é baseado em Python, estava sendo usado extensivamente).

Lista de Ferramentas e Tecnologias no Ecossistema Ethereum [15m-2h]

Esta é uma ótima visão geral de Mahesh Murthy, e ele fornece um resumo fantástico de cada um dos componentes chave da rede Ethereum. Para os propósitos deste curso, estou focando apenas em algumas dessas seções, no entanto,Esta lista apresenta algumas das ferramentas comuns para ajudar enquanto você aprende, incluindo Dapp (Ferramenta de construção, gerenciador de pacotes e assistente de implantação) e Solidity REPL (que permite tentar codificar em Solidity instantaneamente com um console de linha de comando).

Tutorial de Aplicativo de Votação “Hello World” Full Stack no Ethereum – Parte 1 [2h-10h]

Este é um excelente tutorial passo a passo que percorre em um ritmo constante como desenvolver um poderoso, ainda que simples, aplicativo de votação na plataforma Ethereum. Contém três partes e foi recentemente atualizado para aproveitar as recentes atualizações do Ethereum. Se você está procurando escrever o código do zero e não reutilizar nenhum do conteúdo principal, seria uma ótima maneira de aprender a escrever contratos inteligentes, apenas levaria consideravelmente mais tempo para completar do que apenas algumas horas. O objetivo deste exercício é:

  • Configurar o ambiente de desenvolvimento para o aplicativo de votação
  • Aprender a metodologia e sintaxe de escrever um contrato inteligente, depois compilá-lo e implantá-lo no ambiente
  • Interagir com o contrato inteligente na blockchain Ethereum através de um console Node.js.
  • Interagir com o contrato inteligente através de uma página web simples para exibir as contagens de votos e votar nos candidatos através da página.

Tutorial de Aplicativo de Votação “Hello World” Full Stack no Ethereum – Parte 2  [2h-10h]

Este tutorial é uma continuação do desenvolvimento do aplicativo de votação acima, e uma vez concluído, você teria:

  • Aprendido como instalar geth, que é o software cliente (um de muitos) usado para baixar toda a blockchain Ethereum localmente para executar um nó.
  • Aprendido como instalar o framework dapp Ethereum chamado Truffle, que pode ser usado para compilar e implantar o contrato; este tópico pode potencialmente esperar até a próxima seção, pois isso abrange aplicações descentralizadas em muito mais detalhes.
  • Compilado e implantado o contrato inteligente na testnet Ropsten Ethereum.
  • Tido a oportunidade de interagir com o contrato inteligente usando o console Truffle e uma página web normal.

Tutorial de Aplicativo de Votação “Hello World” Full Stack no Ethereum – Parte 3 [2h-7h]

O tutorial final irá guiá-lo sobre como adicionar algumas características-chave ao dapp de votação que foi previamente implantado na blockchain Ethereum, e esta será uma excelente atividade para aprender conceitos mais avançados. Os principais objetivos da lição são:

  • Aprender como usar novos tipos de dados como struct para organizar e armazenar dados na blockchain.
  • Aprender os princípios dos tokens e seu uso.
  • Aprender como fazer pagamentos usando Ether, a moeda da plataforma blockchain Ethereum.

Tutorial de Aplicativo de Votação “Hello World” Full Stack no Ethereum – Demonstração Final  [1h]

Aqui está o aplicativo de votação descentralizado para o mundo inteiro experimentar em primeira mão! Um lembrete amigável, é que para este aplicativo funcionar corretamente, você precisa instalar a extensão do navegador MetaMask e depois mudar para o Ropsten TestNet.

[Optional] Introdução ao Solidity – Parte 1 [2h-5h]

O Ethereum prometeu desde o início que pode implantar, código arbitrário poderoso (também conhecido como contratos inteligentes), e este tutorial em vídeo co-produzido por Will Warren e Jordan Leigh percorre, passo a passo, como configurar um ambiente de desenvolvimento Ethereum, os fundamentos da escrita e implantação de contratos inteligentes na blockchain Ethereum. Altamente recomendado, pois ambos são brilhantes.

[Optional] Introdução ao Solidity – Parte 2 [2h-4h]

Esta é uma continuação do tutorial em vídeo acima, também recomendado, especialmente para desenvolvedores que gostam de seguir visualmente.

3.3.1 Princípios de Segurança de Contratos Inteligentes Ethereum e Auditoria

Qual é o risco de um contrato inteligente ser hackeado? Existem hoje métodos automatizados de verificação de contratos inteligentes? Quão eficazes são os algoritmos autoestabilizadores, autoauditáveis e autocorretivos? Estas perguntas serão respondidas nas seguintes seções.

É essencial que você revise o material abaixo antes e durante a criação de um contrato inteligente. Isso garante que seu código de programação siga padrões e que vulnerabilidades de segurança sejam abordadas tanto quanto possível. Nenhum contrato inteligente será perfeito, mas a quase perfeição é o objetivo e um plano eficaz de gerenciamento e mitigação de riscos é imperativo.

Melhores Práticas de Contrato Inteligente [4h-15h]

Este documento fornece um ótimo conhecimento básico sobre considerações de segurança, implicações e regras a seguir para programadores Solidity. É mantido pela ConsenSys Diligence e pela comunidade Ethereum mais ampla.

Considerações de Segurança de Contrato Inteligente [2h-5h]
Este guia entra em grande detalhe sobre as diferentes armadilhas que você pode enfrentar como um programador solidity, recomendações a seguir e destaca alguns métodos de verificação formal disponíveis.

Exemplo de Auditoria de Contrato Inteligente [30m-1h]

Este é um ótimo exemplo de uma auditoria de contrato inteligente completada por uma das instituições mais respeitadas no negócio hoje, Zeppelin Solutions. Embora cada auditoria seja única e varie consideravelmente em detalhes, as auditorias serão tipicamente organizadas nas seguintes seções: problemas graves que precisam ser abordados imediatamente antes do lançamento do token, problemas potenciais que poderiam potencialmente evoluir para se tornarem problemas se não forem abordados prontamente (como uso de carimbo de data/hora, uso de códigos de envio e recebimento, serviço de custódia, evitar código duplicado, constantes mágicas em quantidades), avisos e, finalmente, uma conclusão.

Concursos de Auditoria de Contrato Inteligente – Parte 1 [20m-1h]

Esta é uma leitura importante, ela fornece algumas lições-chave aprendidas de um concurso de solidity, algumas são evitáveis e algumas não tanto, porque essa é a natureza dos contratos inteligentes como um todo, você só pode proteger seu código de ataques conhecidos, o risco importante vem de ataques desconhecidos (circunstâncias ou cenários que você não havia considerado durante a fase de design inicial).

Concursos de Auditoria de Contrato Inteligente – Parte 2 [20m-1h]

Este artigo discute os resultados da auditoria do concurso e fornece um ótimo resumo de cada uma das submissões vencedoras, muitos conhecimentos ótimos aqui.

Exemplo de um Contrato Inteligente para apostar na luta entre Mayweather e McGregor [1h-2h]

Este é um contrato inteligente que foi realmente implantado na MainNet Ethereum usado para facilitar apostas para aquela grande luta de boxe que aconteceu no ano passado. O desenvolvedor líder acreditava que ir com uma solução como Oraclize era a melhor aposta, portanto, após a luta, qualquer um pode chamar a função checkResult(), assumindo que um pouco de Ethers seja enviado para cobrir a taxa de consulta, a função então acessa a página BoxRec de Floyd Mayweather e raspa o resultado da luta contra McGregor, e finalmente, declara o vencedor no contrato de acordo. Este é apenas um exemplo simples do que é possível quando você integra um evento da vida real em um código de contrato inteligente automaticamente aplicável e transparente.

 

3.4 Aplicações Descentralizadas

Antes de mergulhar diretamente na construção de uma aplicação descentralizada, é inspirador ver o que já foi construído, e o que teve sucesso versus o que não foi amplamente adotado.

Estado das Aplicações Descentralizadas [30m-3h]

Estado dos ÐApps é um diretório curado sem fins lucrativos de Aplicações Descentralizadas globalmente. Todas são construídas em cima do Blockchain Ethereum. Estado dos ÐApps foi criado para categorizar e exibir projetos desenvolvidos construídos nesta tecnologia incrível, e inclui múltiplos projetos de diferentes campos como realidade virtual, inteligência artificial, documentação e registros, mercado de carreiras, jogos, cursos de aprendizado e treinamento, e muito, muito mais.

Lista de DApps Ethereum [30m]

Este é um dos maiores recursos disponíveis neste espaço, mostrando quase 300 aplicações descentralizadas rodando em cima da plataforma Ethereum, e destaca a soma do saldo em ETH que está em todos os contratos DApp, usuários ativos diariamente, o número de transações processadas diariamente, e muito mais. Esta lista cresceu consideravelmente e os projetos notáveis para acompanhar de perto que já estão ao vivo e sendo usados ativamente são: Ethlance, CrytptoKitties, Etherbots, Ethercraft, Etheremon, Etheroll, ETHLend, Crypto Sportz, Edgeless, 0xBitcoin, e Forkdelta.

Fluxo de Trabalho Front-End de Aplicações Descentralizadas [20m-30m]

Este é um ótimo fluxo de trabalho tecnológico que fornece uma visão geral das Dapps, da perspectiva do front-end. Mostra que você pode construir uma DApp que fornece uma UI para usuários implantarem um contrato e então usá-lo (Passos 1 ou 4). Alternativamente, a Dapp poderia assumir que o contrato já foi implantado (mais comum hoje em dia) e iniciar o fluxo da UI a partir daí (Passo 6).

Introdução ao Desenvolvimento de Aplicações Descentralizadas [10h-30h]

Esta é a melhor introdução ao desenvolvimento de aplicações descentralizadas disponível, foi completamente produzida por Jordan Leigh na Decypher Media. Somos afortunados, porque este curso costumava ser uma oferta premium e era necessário pagar para acessar, no entanto, agora está disponível gratuitamente.

A playlist é bastante abrangente e certamente você não precisa assistir e executar cada passo do programa, mas seria útil cobrir as principais seções. Alguns dos materiais anteriores estão um pouco desatualizados, dito isso, ainda são totalmente relevantes. A lista inteira é descrita abaixo, eu destaquei os tutoriais mais urgentes:

  1. Provisionamento do ambiente de desenvolvimento
  2. Criando Pares de Chaves Ethereum
  3. O Problema da Parada e Por Que Precisamos de Gas
  4. Introdução a Transações
  5. Enviando Transações com Interfaces de Usuário
  6. Enviando Transações com Código
  7. Contratos Inteligentes – Olá Mundo
  8. Contratos Inteligentes – Escrow
  9. Contrato Inteligente – Coin Flipper – Parte 1
  10. Contrato Inteligente – Coin Flipper – Parte 2
  11. Herança de Contrato
  12. Oráculos e Oraclize
  13. Como usar o Serviço de Nomes Ethereum (ENS)
  14. Interface de Linha de Comando
  15. O Limite de Gas do Bloco
  16. Evitando Loops com Mapeamentos
  17. Eventos de Contrato
  18. Assinando Mensagens Arbitrárias
  19. Implementando um Esquema de Autenticação
  20. O Padrão de Token ERC20
  21. Instalando Geth
  22. O Bloco Gênesis
  23. Sincronizando o Blockchain
  24. Keystores Geth

Aplicação Descentralizada – Série [2h-10h]

Este índice revisa algumas das conhecidas aplicações Nexus / DappHub. Isso inclui Dapps, bibliotecas, pacotes com um arquivo Dapp, na esperança de aumentar o uso de sua cadeia de ferramentas e funções como ótimos estudos de caso para desenvolvedores. Eles estão criando um conjunto abrangente de ferramentas de desenvolvedor orientadas para blockchain no espírito da Filosofia Unix e definitivamente vale o seu tempo, já que eles contribuíram para o projeto MakerDAO, bem como produziram algumas ferramentas de desenvolvedor amplamente usadas.

[Optional] Configuração, Implantação e Manutenção da Amazon Web Services (AWS) [4h-7h]

Este é material opcional, mas ainda valeria a pena assistir se você está procurando configurar uma instância EC2 da AWS desde o início e está interessado em configurar um ambiente de desenvolvimento Rails. Depois, se interessado, você pode realmente configurar uma instância AWS S3 para armazenamento de arquivos na nuvem.

[Optional] Criando seus próprios aplicativos Ethereum usando Ethereum Go [45m-2h]
Este ainda é um guia e tutorial útil para seguir, já que a linguagem Go também pode ser usada para construir aplicativos, uma vez que Ethereum foi inicialmente construído em Go.

[Optional] Dapps para Iniciantes [5h-20h]

Esta equipe produziu algum conteúdo útil para desenvolvedores que estão procurando entrar na programação usando criptotecnologia, eles também estão trabalhando em uma plataforma educacional chamada EthAcademy (mais informações na seção de ferramentas abaixo), para competir com a Codeacademy.

 

4.0 Ferramentas

Esta é uma lista de ferramentas e recursos que você deve achar mais úteis no seu desenvolvimento:

Ethereum.stackexchange; Grátis

Ethereum Stack Exchange é um site de perguntas e respostas para usuários do Ethereum

Wiki Ethereum; Grátis

Descrições úteis e aprofundadas de inúmeros componentes Ethereum

Caixas Truffle; Grátis

Modelos úteis, essas caixas podem realmente conter contratos & bibliotecas Solidity, visões de front-end e dapps de exemplo completos.

Remix; Grátis

IDE Solidity, muito útil e vale o tempo

Ethacademy; Grátis

Isso ainda não foi lançado, mas eu sugeriria se inscrever no boletim informativo, pois eles enviam muitas informações ótimas sobre as últimas ferramentas e integrações de desenvolvimento Ethereum.

Ether.fund; Grátis

Tem um diretório de contratos inteligentes Solidity que poderia ajudá-lo a criar mais inovações.

GitHub Ethereum; Grátis

Tem uma ótima lista de recursos úteis para ajudar no desenvolvimento de Dapps

CryptoZombies; Grátis

Com CryptoZombies, você aprenderá como escrever Contratos Inteligentes Ethereum usando Solidity de uma maneira divertida e interativa, onde você codifica seu próprio jogo de zumbis, especificamente construindo seu próprio jogo de colecionáveis cripto.

Ethernaut da OpenZeppelin; Grátis

Esta é uma ótima maneira de aprender muito mais sobre segurança Ethereum, especificamente como proteger seu código Solidity de ser hackeado (tanto quanto possível). Um ótimo tutorial para aprender o básico.

Yasiv; Grátis

Esta é uma incrível ferramenta web gratuita que permite que você veja, visualmente em um mapa de links, quais produtos da Amazon estão correlacionados de alguma forma ou de outra. Este exemplo mostra livros sobre Blockchain. Tente digitar Ethereum.

Mapa Geográfico Bitnodes; Grátis

Isso foi criado para estimar o tamanho da rede Bitcoin alcançando todos os nós contribuintes.

Mapa da Rede Bitnodes; Grátis

Esta é outra bela visualização de todos os nós na rede Bitcoin, ótimo para acompanhar ao longo de vários meses.

Bitcoin Interaqt; Grátis

Esta visualização incrível é ao vivo e opera em tempo real, mostrando blocos enquanto estão sendo processados e minerados. Você pode realmente clicar em qualquer um dos blocos flutuantes e ele imediatamente mostrará o conteúdo daquele bloco na visualização do explorador.

Blockchain Diário – Transações Não Confirmadas; Grátis

Maravilhoso ver transações não confirmadas neste tipo de visualização, você pode ver milhares de transações esperando para serem processadas; há um esforço conjunto de todos na comunidade Bitcoin para acelerar a adoção de algumas das rotinas de otimização que eles têm em vigor.

Blockseer; Grátis

Esta é uma das únicas soluções disponíveis hoje que permite rastrear o fluxo de transações enquanto elas estão atravessando o Blockchain. Muito recomendado para se inscrever.

Blocos WizB; Grátis

Isso é interessante para acompanhar, permite que você amplie e monitore onde as transações estão sendo processadas pelos nós na rede.

 

5.0 Material adicional

O que você precisa saber sobre tecnologia Blockchain; Grátis  [20m-40m]

Este é um ótimo artigo escrito por Karim Lakhani, professor da Harvard Business School e co-fundador da Iniciativa Digital HBS, onde ele discute blockchain em grande profundidade. Lakhani decompõe como a tecnologia por trás do bitcoin funciona e fala sobre as indústrias e empresas que poderiam ver novas oportunidades de crescimento ou perder negócios.

A Verdade sobre a tecnologia Blockchain; Grátis [15m-20m]

Este é outro excelente artigo de Marco Iansiti, Professor de Administração de Empresas David Sarnoff na Harvard Business School e também por Karim R. Lakhani, Professor de Administração de Empresas Charles Edward Wilson e o Bolsista Dorothy e Michael Hintze na Harvard Business School. Eles discutem os padrões de adoção de tecnologia, a nova arquitetura, um framework para adoção de Blockchain

Livro- Dominando o Bitcoin: Desbloqueando Criptomoedas Digitais por Andreas M. Antonopoulos; Grátis

Escrito por um dos gurus originais de criptomoedas e tecnologia Blockchain, disponível gratuitamente aqui.

Livro – Dominando Ethereum: Construindo Contratos Inteligentes e Dapps; Grátis

Outra obra-prima escrita por Andreas Antonopoulos, foi publicada em dezembro de 2018, mas há uma edição gratuita disponível no GitHub.

Livro – Blockchain: Projeto para uma Nova Economia por Melanie Swan; Pago

Este é um dos meus favoritos pessoais, Melanie parecia à frente de seu tempo quando lançou este livro, isso foi antes do Ethereum ter atenção mainstream, ela é uma verdadeira visionária e previu em 2015 bastante do que realmente aconteceu em 2017.

Introdução da ConsenSys à Programação de Contratos Inteligentes no Ethereum; Grátis [2h-4h]

Este artigo da Consensys fornece um tutorial introdutório útil sobre programação de contratos inteligentes baseados em Dapp.

Apesar deste artigo ser datado, ele ainda contém uma tonelada de informações úteis para aspirantes a desenvolvedores Blockchain e arquitetos Blockchain.

Ethereum na Prática – Partes 1, 2 e 3 por um dos principais desenvolvedores Ethereum; Grátis [3h-5h]

  1. Como Construir sua própria Criptomoeda
  2. Como Construir uma

Get Smarter About Crypto

Join 1,000+ subscribers and get our 5 min weekly newsletter on what matters in crypto trading.

THE bitcoinIST TODAY

Handpicked stories, in your inbox

A daily Bitcoin newsletter with the best of our information