Bem-vindo à série Crypto Basics da Bankless Publishing. Enviaremos todo o nosso conteúdo introdutório ao web3 no Mirror todas as segundas-feiras, permitindo que os usuários façam a curadoria de uma biblioteca de referência do web3 cunhando NFTs no Optimism.
Solidity é a linguagem de programação mais popular usada para criar contratos inteligentes em blockchains. Graças às suas qualidades inovadoras, temos um ecossistema de comunidades web3 rodando na tecnologia blockchain. Mesmo que você não esteja planejando construir com o Solidity, saber como ele funciona facilita a compreensão de conceitos importantes no espaço web3 – onde os contratos inteligentes determinam a maioria das atividades. Portanto, seja você um construtor, auditor, hodler ou aprendiz casual interessado em Solidity, este artigo é para você.
Dito isso, aprender Solidity sem compreensão suficiente de como funcionam os blockchains pode ser comparado a tentar consertar o motor de um carro sem saber como um carro funciona. Nossa abordagem para aprender Solidity deve, portanto, incluir um roteiro que considere a tecnologia subjacente (blockchain) onde a linguagem é usada. Compreender a infraestrutura blockchain torna mais fácil contextualizar problemas e soluções de programação. Sem esses fundamentos, é quase impossível ter sucesso na programação do Solidity.
À medida que aprendemos Solidity, a atenção aos detalhes também é crucial; é assim que podemos aprender a desenvolver projetos sustentáveis ​​e, por extensão, construir o ecossistema web3. Assim como os semeadores de sementes em uma floresta, os programadores do Solidity são os principais responsáveis ​​pelo progresso ou declínio do ecossistema web3 com base no sucesso ou fracasso dos projetos que constroem. Contratos inteligentes mal escritos atraem hackers que adoram explorar sistemas web3; Como resultado, vários projetos importantes de blockchain sofreram um desaparecimento dramático. É por isso que a atenção aos detalhes enquanto aprende Solidity é fundamental.
Os recursos neste artigo, incluindo cursos gratuitos, livros e especialistas no assunto, irão ajudá-lo a aprender Solidity adequadamente usando abordagens adequadas ao seu estilo de aprendizagem. Não se esqueça de continuar experimentando também a aplicação prática de suas habilidades, para que você possa ganhar experiência no mundo real.
Ethereum fornece muitos recursos valiosos para aprender Solidity. Sua documentação sobre Solidity fornece insights profundos sobre os diferentes componentes da linguagem e as razões pelas quais a linguagem funciona dessa maneira. A documentação começa com uma introdução ao Solidity, seguida de instruções sobre como instalar o Solidity e exemplos básicos para contextualizar a linguagem para os alunos.
Além disso, a documentação fornece informações sobre a versão mais recente do Solidity, bem como sobre versões anteriores, com detalhes sobre alterações entre versões de idiomas e as implicações de tais alterações. A documentação também fornece notas e avisos que você deve ter em mente ao usar a linguagem. O conteúdo da documentação é apresentado em tópicos principais, incluindo:
A profundidade das informações fornecidas sobre o Solidity na documentação é complementada por exemplos práticos e uma folha de dicas que pode ser testada em seu ambiente de desenvolvimento integrado (IDE) ou Remix.
Este site, construído por Austin Griffith, oferece uma série de recursos para alunos do Solidity. Quando estiverem prontos, os codificadores são convidados para ‘SpeedRun Ethereum’ por meio de uma série de missões, incluindo a implantação de um NFT e a construção de um DEX. O próprio site de Austin também possui links para recursos como Scaffold-eth e eth.build — “uma sandbox educacional para web3”.
A Dapp University oferece diversos tutoriais em vídeo sobre Solidity e como construir aplicativos descentralizados com a linguagem. Seus vídeos no YouTube fornecem orientação de aprendizagem passo a passo para pessoas de diferentes níveis de habilidade enquanto constroem aplicativos blockchain. Os vídeos da Dapp University também fornecem atualizações no espaço blockchain que são relevantes para os alunos do Solidity.
Os vídeos do EatTheBlocks no YouTube fornecem aos espectadores insights sobre as diferentes maneiras de construir aplicativos descentralizados no blockchain com Solidity. Além dos vídeos tutoriais, EatTheBlocks fornece links para repositórios GitHub onde você pode estudar o código usado nos tutoriais em vídeo.
White Hat DAO oferece diversos recursos de aprendizagem em seu Discord e site. O DAO hospeda várias sessões de aprendizagem interativas e compartilha constantemente recursos de aprendizagem valiosos em seus canais Discord.
Secureum oferece diversos recursos para aprender Solidity, incluindo um bootcamp para alunos mais experientes adquirirem habilidades de Solidity com foco em segurança. Os alunos do Bootcamp adquirem essas habilidades trabalhando em desafios focados na segurança.
Além do Bootcamp, Secureum oferece um boletim informativo de alta qualidade sobre vulnerabilidades de contratos inteligentes e resultados de auditoria. Os artigos sobre resultados de auditoria de contratos inteligentes ensinam aos leitores sobre vulnerabilidades em aplicações blockchain da vida real.
Etherscan fornece uma interface de usuário para ler e comparar contratos inteligentes de diferentes projetos de blockchain. Com o Etherscan, você pode aprender as diversas abordagens que os engenheiros de contratos inteligentes usam para desenvolver seus projetos. Você pode até encontrar diferenças sutis em suas abordagens que o ajudam a tomar melhores decisões à medida que você constrói com o Solidity.
Remix é uma ferramenta de compilação online que permite testar códigos do Solidity no seu navegador de internet. Pense nisso como uma sandbox para brincar com suas ideias de codificação para contratos inteligentes sem precisar configurar o ambiente de codificação em seu IDE.
Remix pode ser sua primeira linha de defesa contra códigos escritos incorretamente. Por exemplo, se você estiver preocupado com a segurança de uma função Solidity e seus parâmetros, você pode simplesmente executar a função no Remix para testar as saídas.
Os usuários do Solidity by Example são capazes de navegar por diferentes exemplos de código do Solidity: desde contratos inteligentes simples com funções fáceis de ler até contratos inteligentes mais complexos herdados de outros contratos inteligentes. Seus recursos expõem os alunos aos seguintes conceitos:
Solidez para aplicações
Hacks de contratos inteligentes
Testes para contratos inteligentes
Para melhor compreensão, Solidity By Example se esforça para fazer vídeos no YouTube que explicam os tópicos de seu site.
CryptoZombies é um dos melhores lugares para aprender Solidity. Eles usam uma abordagem divertida para ensinar os fundamentos do idioma, ajudando os alunos a construir um jogo de zumbi baseado em blockchain. A grande vantagem de aprender no CryptoZombies é a capacidade de dividir conceitos mais robustos do Solidity em porções adequadas para iniciantes.
Em todos os níveis, os alunos são expostos a conceitos-chave do Solidity, após os quais terão que responder a certas perguntas para avançar para o próximo nível de desafio.
Os principais tópicos de aprendizagem disponíveis no CryptoZombies incluem:
Chamadas de função e modificação
Visibilidade e acesso à função
No momento em que este artigo foi escrito, o curso Solidity Zero to Hero era gratuito, com 33 aulas em oferta; projetado para ensinar tudo o que você precisa saber para lançar um aplicativo blockchain ao vivo. Os participantes do curso devem aprender:
Eficiência na programação do Solidity por meio de projetos de construção
Entendendo como funcionam os contratos inteligentes
Compreendendo as funções de desenvolvimento do Ethereum
Compreendendo a estrutura do código do Solidity
Proficiência no uso das principais ferramentas de desenvolvimento do Ethereum
Com seus temas fictícios de exploração espacial, Space Dogo Interactive Solidity Course usa uma abordagem semelhante à de CryptoZombies. O curso não é tão longo quanto outros cursos, mas cobre conceitos básicos que são importantes para serem lembrados. Semelhante ao CryptoZombies, o curso começa com um desafio para o usuário: definir um contrato inteligente que crie personagens fictícios. O objetivo do curso é:
Codificação em Solidez
Escrevendo contratos inteligentes
Criação de aplicativos blockchain
Tornando-se um programador
Proficiência em desenvolvimento fullstack
O curso Ethereum Developer Bootcamp da Alchemy University apresenta aos indivíduos com habilidades intermediárias os fundamentos do desenvolvimento web3. Os alunos aprendem por meio de sessões ao vivo, sessões de codificação, projetos semanais e guias escritos. Os objetivos de aprendizagem do curso incluem:
Preparando-se para entrevista
Construindo contratos inteligentes
O curso Road to Web3 é um caminho individualizado para desenvolvedores intermediários que, como no curso Ethereum Developer Bootcamp, podem aprender por meio de sessões ao vivo, sessões de codificação, projetos semanais e guias escritos. Os objetivos de aprendizagem incluem:
Desenvolvendo um portfólio de desenvolvedores
Construindo contratos inteligentes
Adquirindo habilidades de desenvolvimento full stack web3
LearnWeb3 oferece aos usuários não apenas um curso gratuito, mas uma forte comunidade de colegas alunos crescendo juntos. Os caminhos de aprendizagem no LearnWeb3 incluem:
O suporte da comunidade no LearnWeb3 é um dos maiores benefícios disponíveis para os alunos. Este suporte facilita a experiência de aprendizagem para iniciantes; alunos experientes também são capazes de desenvolver seus conhecimentos auxiliando seus colegas menos experientes. Com a ajuda de instrutores mais experientes, essa comunidade de alunos consegue obter uma sinergia ainda melhor.
LearnWeb3 também lançou recentemente um programa aprenda a ganhar, onde os alunos ganham enquanto aprendem sobre o desenvolvimento web3 com instrutores experientes e engenheiros de contratos inteligentes.
Mastering Ethereum de Andreas Antonopolous é um clássico escrito para desenvolvedores. O livro fornece orientação sobre blockchains compatíveis com EVM, como Ethereum Classic, RootStack e Ethereum. Alguns capítulos do livro contêm insights sobre Solidity e outros conceitos importantes de blockchain, incluindo Blockchain Oracles, criptografia, carteiras e tokens.
Entre muitos outros benefícios, ler Mastering Ethereum ajuda a contextualizar muito do conhecimento que você adquiriu sobre Solidity. O livro também se aprofunda em como funcionam os endereços de carteira, hacks famosos, curvas elípticas, história do DAO e muitos outros tópicos que o olho destreinado facilmente negligenciaria.
Se você deseja levar suas habilidades para o próximo nível, o Livro do Engenheiro Sênior de Solidez pode ser para você. O livro esclarece princípios, padrões de design a serem evitados e outras dicas e truques de fluxo de trabalho que ajudam os alunos do Solidity a melhorar a qualidade de seu código.
As melhores pessoas para seguir no Twitter para aprender Solidity depende de seus objetivos de aprendizagem. Se você é um aluno casual que deseja apenas entender melhor como os contratos inteligentes são seguros, seguir as páginas que explicam os aspectos mais simples pode ser mais benéfico para você. No entanto, se você deseja criar seu próprio projeto ou está atualmente executando um projeto, as páginas que fornecem insights granulares sobre o Solidity podem fornecer mais ajuda.
Essas contas do Twitter são consideradas três dos melhores desenvolvedores do setor:
As melhores pessoas para seguir no Twitter para aprender Solidity com foco em segurança incluem:
oficial_cia, que fornece um tesouro de informações para orientar as pessoas sobre tópicos importantes do Solidity. As postagens com foco em segurança orientam os desenvolvedores sobre maneiras não apenas de escrever Solidity, mas também de escrever código seguro. Officer_cia também tweeta conceitos de seu DeFi Developer Roadmap no Github.
trill2scope, que publica tópicos esclarecedores sobre como aprender Solidity e auditar contratos inteligentes. Quer você seja um desenvolvedor iniciante ou mais experiente do Solidity, sempre há algo novo para aprender em seus tópicos do Twitter, que enfatizam abordagens seguras para o desenvolvimento de contratos inteligentes.
Existem várias abordagens para aprender Solidity. O importante é que você permaneça consistente e persistente em sua busca pelo conhecimento. Ter um mentor também é importante porque pode acelerar muito o processo de aprendizagem. A aprendizagem em grupo, especialmente com pessoas de diferentes níveis de habilidade, também é altamente incentivada. As colaborações e o compartilhamento de conhecimento em grupos aliviam o fardo de aprender uma linguagem tão complexa como o Solidity. Tudo isso, combinado com os recursos deste artigo, são ajudas valiosas que o ajudarão muito em sua jornada para se tornar um programador profissional do Solidity.
Uma versão deste artigo foi publicada originalmente pela Bankless Publishing em 14 de dezembro de 2022.
0xzh é apaixonado pela tecnologia Web3 e seu uso para melhorar o desenvolvimento humano. Ele gosta de escrever, praticar esportes, aprender sobre regulamentações tributárias, videogames e ler.
Kornekt é um escritor e editor com forte convicção no mundo que a Web3 cria.
Pub-gmn.eth é um desenvolvedor blockend.
Chameleon é designer e criador no espaço web3.
BanklessDAO é um mecanismo educacional e de mídia dedicado a ajudar indivíduos a alcançar independência financeira.
Este post não contém conselhos financeiros, apenas informações educacionais. Ao ler este artigo, você concorda e afirma o acima exposto, bem como que não está sendo solicitado a tomar uma decisão financeira e que de forma alguma está recebendo qualquer projeção fiduciária, promessa ou inferência tácita de sua capacidade de alcançar resultados financeiros. ganhos.
Tecnologia de contabilidade descentralizada 101 por The Crypto Barista
The 101 em NFTs, um briefing de Lanz
4 etapas simples para ingressar em um DAO por Samantha Marin
Rumo a uma melhor distribuição de tokens por Paul Hoffman
Carteiras de criptomoeda 101 por ijeblowrider