O que é Solidity?

IntermediárioNov 23, 2023
Descubra a essência do Solidity, a linguagem de contrato inteligente do Ethereum e o seu impacto na inovação blockchain.
O que é Solidity?

Compreender uma das principais linguagens de programação que alimentam o mundo das aplicações descentralizadas e dos contratos inteligentes é um passo fundamental para qualquer pessoa que se aventurar no reino da blockchain.

Solidity não é apenas mais uma linguagem de codificação; é a força motriz por trás da criação de contratos auto-executáveis e aplicações descentralizadas na blockchain Ethereum e em várias outras plataformas. Este artigo irá investigar como o Solidity funciona, explorando o seu significado, características e aplicações do mundo real.

O que é Solidity?

Solidity é uma linguagem de programação orientada a objetos de alto nível para escrever e executar contratos inteligentes na cadeia de blocos. Mais conhecido pela sua ligação à casa do DeFI, Ethereum, o Solidity foi criado pelos programadores da Ethereum para criar contratos inteligentes que funcionam com a Máquina Virtual Ethereum na rede.

No espaço dos programadores web3, o Solidity é uma das linguagens de programação mais utilizadas, embora apresente elementos de outras linguagens populares como Javascript, C++ e Python. Solidity é uma linguagem tipada estatisticamente que suporta herança, tipos complexos definidos pelo utilizador e bibliotecas, elementos essenciais para a funcionalidade de contratos inteligentes. Solidity é uma escolha popular entre os programadores de contratos inteligentes porque é fácil de usar. A natureza da linguagem de programação (alto nível) substitui a digitação em bitcode (uns e zeros) por uma combinação de letras e números.

Antecedentes da Linguagem de Programação Solidity

Apesar da sua reputação atual como uma das linguagens de programação mais utilizadas, o Solidity tem um início humilde que remonta a 2014. Em 2014, Gavin Woods, Christian Reitwissner e outros programadores da Fundação Ethereum criaram o Solidity para apoiar o desenvolvimento da próxima rede Ethereum. Os programadores criaram o Solidity como uma linguagem que os programadores consideraram fácil de usar, expressiva e compatível com a Ethereum Virtual Machine, um ambiente de tempo de execução central para a execução de contratos inteligentes.

O Solidity é inspirado em linguagens existentes como Python, C++ e JavaScript. Ainda assim, a sua originalidade vem de conceitos únicos e sintaxe incorporados especificamente para lidar com contratos inteligentes, variáveis de estado, modificadores e eventos.

Como funciona?

A solidez é usada principalmente para escrever contratos inteligentes. Os contratos inteligentes são a espinha dorsal da rede Ethereum e referem-se a programas que são executados na Ethereum Virtual Machine (EVM) e servem múltiplas funções, envolvendo principalmente a automação de transações na rede. O EVM funciona como detentor de registos para o “computador global” da Ethereum, o que significa que o EVM mantém o estado global da rede, incluindo endereços, saldos de contas e participações de tokens.

Os contratos de solidez são compilados em bytecode e lidos pelo EVM, o que significa que, teoricamente, os programadores podem escrever contratos inteligentes Ethereum diretamente com bytecode. No entanto, escrever diretamente com bytecode dificilmente é usado porque é mais técnico e propenso a erros. Como tal, usar linguagens de alto nível como o Solidity permite que os programadores se concentrem na lógica e na funcionalidade do código em vez de lidar com as complexidades da escrita em bytecode. Como resultado, os programadores podem codificar com mais eficiência e concentrar-se mais na criação de contratos inteligentes que são mais fáceis de ler, escrever e manter.

O Solidity está sujeito a atualizações periódicas de versão, que são lançadas no Github. Os contratos inteligentes são imutáveis, o que significa que, uma vez implementados na cadeia, não podem ser revertidos. Porque o Solidity em si está em constante evolução, a imutabilidade dos contratos inteligentes afeta-o porque quaisquer erros ou falhas no código de um contrato não podem ser facilmente corrigidos uma vez que está ativo. A razão é que cada versão tem comportamentos e características distintas, o que pode influenciar a funcionalidade do contrato e como interage com outros elementos dentro do ecossistema Ethereum.

Nos últimos tempos, os programadores preferiram usar contratos de proxy e contratos actualizáveis. Os contratos de proxy permitem a execução do código de outro contrato. Os proxies atuam como intermediários, encaminhando chamadas e transações para o contrato pretendido, permitindo funcionalidades adicionais, como controle de acesso ou registro. Os contratos atualizáveis envolvem essencialmente contratos inteligentes que podem ser atualizados sem perder o seu estado original.

Deve notar-se que a versão do Solidity usada no momento da criação do contrato inteligente também é essencial, porque isso determinará o comportamento e as características do contrato inteligente. Cada linha de código-fonte em cada contrato inteligente Solidity, por mais simples que seja, deve começar com uma declaração de qual versão do compilador Solidity deve ser usada para esse pedaço de código específico. Esta declaração é o que é conhecido como a “versão pragma”.

Principais características do Solidity Language

O Solidity é considerado como a porta de entrada para o mundo das aplicações descentralizadas e dos contratos inteligentes baseados em blockchain. Algumas características-chave que tornam o Solidity uma linguagem de programação tão produtiva incluem o seguinte.

Funções incorporadas e tipos de dados

Os programadores não precisam de escrever declarações condicionais ou loops para executar ações dependentes de certas condições. Em vez disso, podem especificar as condições diretamente no seu código-fonte, e o contrato inteligente executará a ação específica apenas quando essas condições forem cumpridas. Isso torna o processo de codificação muito mais gerenciável.

O Solidity também suporta os tipos de dados mais comuns, como inteiros, números de ponto flutuante, strings, matrizes e mapas. Os programadores também podem definir os seus próprios tipos de dados e usá-los nos seus contratos inteligentes.

Ambiente de Codificação

O compilador do Solidity verifica consistentemente se há erros no código enquanto o escreve e alerta-o sobre possíveis problemas. Isto é especialmente útil no desenvolvimento de DAps grandes e complexos e contratos inteligentes.

Casos de uso da Linguagem de Programação Solidity

A solidez pode ser normalmente usada para criar contratos inteligentes que melhoram a transparência e a rastreabilidade na gestão da cadeia de abastecimento. Os contratos inteligentes com base na solidez também podem ajudar a prevenir a falsificação e melhorar a confiança no processo da cadeia de abastecimento, registando transações e verificando a autenticidade dos produtos.

O Solidity é frequentemente utilizado para desenvolver jogos baseados em blockchain e mundos virtuais com propriedade de ativos, economias no jogo e escassez comprovada. Solidity abre novas possibilidades para ativos digitais únicos e interações com os jogadores. Os desenvolvedores também usaram o Solidity para criar lógica de troca descentralizada, mecanismos de leilão, protocolos de empréstimo, pagamentos condicionais, etc.

Além disso, o Solidity é usado para implementar NFTs. Também permitiu a criação de DAOs, que são organizações autónomas que operam com contratos inteligentes, permitindo, por sua vez, uma tomada de decisão e governação transparentes.

Projetos de Apoio à Solidity

Avalanche

O Avalanche é uma plataforma blockchain de ponta que ganhou algum destaque no mundo do DeFie e dos contratos inteligentes. No Avalanche, as transações são processadas em segundos, tornando-se uma plataforma eficiente para aplicações DeFie e Troca de Token. A sua compatibilidade EVM permite que funcione perfeitamente com contratos inteligentes escritos pelo Solidith, contribuindo também para a adoção do Avalanche pelos programadores.

Monax

Monax é um projeto blockchain líder concebido para revolucionar, simplificar e otimizar a forma como as empresas lidam com acordos legais. A plataforma permite a criação de acordos juridicamente vinculativos e automatiza vários aspetos da execução e gestão de contratos. É particularmente benéfico para as empresas, uma vez que a Monax oferece-lhes uma maneira segura e eficiente de gerir todo o ciclo de vida do contrato.

A Solidity ajuda a ajudar a criação de contratos inteligentes auto-executáveis, enquanto a Monax estende esta tecnologia a acordos legais, permitindo que as empresas definam as suas regras contratuais num formato programável e auto-executável.

Solidez vs. Ferrugem

Solidity e Rust partilham algumas semelhanças básicas. Por um lado, ambas as linguagens de programação oferecem compatibilidade com várias cadeias. Embora o Solidity tenha sido concebido principalmente para o Ethereum, suporta blockchains de camada 2, sidechains e, claro, blockchains de camada 1 compatíveis com EVM, como Moonbeam e cadeia Avalanche-C. O Rust também suporta um glossário de blockchains como Near e Solana enquanto continua a ser a linguagem de programação que inspirou as linguagens Move e Sui.

Além disso, ambas as línguas são línguas completas de Turing. Isto significa que ambas as linguagens podem resolver qualquer problema computacional independentemente da complexidade. As linguagens de programação herdaram esta funcionalidade da máquina de Turing, desenvolvida por Alan Turing.

Por outro lado, Solidity e Rust possuem diferenças gritantes. Por exemplo, o Solidity é uma linguagem de alto nível que oferece um elevado nível de abstração da arquitectura do sistema informático. Como resultado, o Solidity é mais fácil de aprender e usar, tornando-o numa linguagem mais orientada para o utilizador. Por outro lado, o Rust é uma linguagem de baixo nível mais próxima do hardware do computador e fornece boa eficiência de memória e velocidade, tornando-a uma linguagem mais orientada para a máquina.

Além disso, ambas as linguagens de programação usam paradigmas de programação diferentes. Um paradigma de programação é a abordagem usada para resolver um problema. A solidez, por um lado, é uma linguagem orientada a objetos, uma vez que usa o paradigma orientado a objetos para resolver problemas. Por outro lado, o Rust é uma linguagem multiparadigma, o que significa que permite usar diferentes paradigmas ou abordagens para resolver problemas. Alguns dos paradigmas que o Rust suporta são orientados a objetos, funcionais e imperativos, entre vários outros.

Solidez vs. JavaScript

Solidity e Javascript são duas das linguagens de programação mais comuns mas partilham muito poucas semelhanças. O Javascript foi uma das maiores inspirações para o Solidity, mas agora a única semelhança significativa é que o Solidity usa a palavra-chave 'function' para definir funções. A sintaxe do Solidity também tem uma aparência semelhante ao JavaScript, mas isso é um pouco enganoso porque o Solidity e o JavaScript operam de forma bastante diferente.

Por outro lado, ambas as línguas diferem muito. O JavaScript pode ser executado diretamente, enquanto o Solidity requer compilação porque o JavaScript é uma linguagem interpretada, não uma linguagem compilada como o Solidity. Além disso, o Solidity tem a capacidade de transferir dinheiro. No entanto, esta não é uma capacidade incorporada, pelo que os programadores devem utilizar uma interface de programação de aplicação (API) externa.

Outra diferença entre as duas linguagens é que com o Solidity, uma vez que um contrato inteligente é implementado no Ethereum, é imutável e o código não pode mais ser editado. O JavaScript também não permite a interação direta com o código em execução noutros servidores, mas se o servidor oferecer uma API que permita o acesso, o programador pode editar o código.

Os melhores recursos para aprender solidez

Aprender Solidity é um dos primeiros passos a dar quando se torna um programador web3, uma vez que é a linguagem de programação fundamental para programadores que desejam criar e implementar contratos inteligentes na rede Ethereum. Ao escolher um curso para aprender sobre Solidity, é crucial avaliar os tópicos, o formato e outros recursos suplementares fornecidos. Para obter o melhor conhecimento sobre Solidity, pode considerar alguns recursos para usar, incluindo o seguinte.

Gate Learn

O Gate Learn oferece um curso intitulado “Plataformas de Desenvolvimento Blockchain e Contratos Inteligentes”, onde fornecem uma visão geral das plataformas populares de desenvolvimento de blockchain, bem como das suas principais características. Embora seja um curso abrangente, oferece uma visão chave sobre o processo de desenvolvimento de uma aplicação básica de blockchain usando o Solidity.

Com este curso, aprenderá a configurar o ambiente de desenvolvimento, escrever o contrato inteligente, definir as variáveis de estado do contrato, criar funções para interagir com o contrato, compilar e implementar o contrato.

O Gate Learn também oferece um curso intitulado “Contratos Inteligentes 101: Uma Introdução Básica” onde pode aprender sobre os fundamentos dos contratos inteligentes e os seus casos de uso em todas as indústrias e também interagir com contratos externos e implementar os seus próprios contratos inteligentes usando o MetaMask

Academia WTF

A WTF Academy é uma plataforma de aprendizagem de blockchain de código aberto e orientada para a comunidade que oferece cursos completos sobre desenvolvimento web e blockchain, como JavaScript, análise on-chain, EVM Opcodes e Solidity. É patrocinado pela Fundação Ethereum, StarkWare e Optimism. Também recebeu doações do Gitcoin e do Mirror.

A WTF Academy oferece cinco cursos de Soliditypara novatos ( Solidity 101, 102, 103, Solidity 104 Security e Solidity 104 Tx Analysis). Estes cursos são gratuitos e fornecem certificados após a conclusão.

O Curso Completo de Solidez — Blockchain — Zero to Expert [Udemy]

Este é um curso pago da Udemy que serve como uma solução completa para aprender Solidity. O curso irá ajudá-lo a começar do zero com os tópicos mais fundamentais e irá levá-lo a um nível avançado, onde pode construir contratos inteligentes complexos e DApps. É um curso completo, por isso não vai precisar de quaisquer recursos suplementares para obter toda a informação necessária.

Neste curso, vai aprender sobre a linguagem de programação Solidity, como escrever contratos inteligentes e também entender EVM, a cadeia de blocos Ethereum e como funcionam outras plataformas blockchain. Também pode aplicar os seus conhecimentos com mais de 30 tarefas e desafios.

Aprender Solidity: Linguagem de Programação para Contratos Inteligentes Ethereum [Blockchain Council]

O Blockchain Council desenvolveu recentemente o Programa Learn Solidity para ajudar os programadores a compreender o básico dentro de algumas horas. Com este curso gratuito, deve ter uma ideia clara sobre o desenvolvimento de DApps na cadeia de blocos Ethereum.

O curso vai ensinar-lhe os fundamentos do Ethereum, contratos inteligentes e outras plataformas blockchain. Também aprenderá a instalar e configurar o Solidity Development Environment, construir aplicações em tempo real e implementar contratos inteligentes no Solidity.

Bootcamp do desenvolvedor Ethereum Blockchain com solidez [Udemy]

Este curso não requer conhecimentos prévios para ser concluído. O curso dar-lhe-á uma compreensão teórica e prática dos contratos inteligentes e aprenderá a usar as principais ferramentas de desenvolvimento do Ethereum. Também apresenta tutoriais em vídeo passo a passo para facilitar uma melhor compreensão.

Este curso é um curso pago e é recomendado para aqueles que pretendem ser desenvolvedores Ethereum. Concluir este curso irá torná-lo proficiente em Solidity, Web3, Remix, Metamask, Truffle e outros conceitos de blockchain.

Autor: Tamilore
Tradutor(a): Cedar
Revisor(es): Matheus、KOWEI、Ashley He
* As informações não se destinam a ser e não constituem aconselhamento financeiro ou qualquer outra recomendação de qualquer tipo oferecido ou endossado pela Gate.io.
* Este artigo não pode ser reproduzido, transmitido ou copiado sem fazer referência à Gate.io. A violação é uma violação da Lei de Direitos de Autor e pode estar sujeita a ações legais.

O que é Solidity?

IntermediárioNov 23, 2023
Descubra a essência do Solidity, a linguagem de contrato inteligente do Ethereum e o seu impacto na inovação blockchain.
O que é Solidity?

Compreender uma das principais linguagens de programação que alimentam o mundo das aplicações descentralizadas e dos contratos inteligentes é um passo fundamental para qualquer pessoa que se aventurar no reino da blockchain.

Solidity não é apenas mais uma linguagem de codificação; é a força motriz por trás da criação de contratos auto-executáveis e aplicações descentralizadas na blockchain Ethereum e em várias outras plataformas. Este artigo irá investigar como o Solidity funciona, explorando o seu significado, características e aplicações do mundo real.

O que é Solidity?

Solidity é uma linguagem de programação orientada a objetos de alto nível para escrever e executar contratos inteligentes na cadeia de blocos. Mais conhecido pela sua ligação à casa do DeFI, Ethereum, o Solidity foi criado pelos programadores da Ethereum para criar contratos inteligentes que funcionam com a Máquina Virtual Ethereum na rede.

No espaço dos programadores web3, o Solidity é uma das linguagens de programação mais utilizadas, embora apresente elementos de outras linguagens populares como Javascript, C++ e Python. Solidity é uma linguagem tipada estatisticamente que suporta herança, tipos complexos definidos pelo utilizador e bibliotecas, elementos essenciais para a funcionalidade de contratos inteligentes. Solidity é uma escolha popular entre os programadores de contratos inteligentes porque é fácil de usar. A natureza da linguagem de programação (alto nível) substitui a digitação em bitcode (uns e zeros) por uma combinação de letras e números.

Antecedentes da Linguagem de Programação Solidity

Apesar da sua reputação atual como uma das linguagens de programação mais utilizadas, o Solidity tem um início humilde que remonta a 2014. Em 2014, Gavin Woods, Christian Reitwissner e outros programadores da Fundação Ethereum criaram o Solidity para apoiar o desenvolvimento da próxima rede Ethereum. Os programadores criaram o Solidity como uma linguagem que os programadores consideraram fácil de usar, expressiva e compatível com a Ethereum Virtual Machine, um ambiente de tempo de execução central para a execução de contratos inteligentes.

O Solidity é inspirado em linguagens existentes como Python, C++ e JavaScript. Ainda assim, a sua originalidade vem de conceitos únicos e sintaxe incorporados especificamente para lidar com contratos inteligentes, variáveis de estado, modificadores e eventos.

Como funciona?

A solidez é usada principalmente para escrever contratos inteligentes. Os contratos inteligentes são a espinha dorsal da rede Ethereum e referem-se a programas que são executados na Ethereum Virtual Machine (EVM) e servem múltiplas funções, envolvendo principalmente a automação de transações na rede. O EVM funciona como detentor de registos para o “computador global” da Ethereum, o que significa que o EVM mantém o estado global da rede, incluindo endereços, saldos de contas e participações de tokens.

Os contratos de solidez são compilados em bytecode e lidos pelo EVM, o que significa que, teoricamente, os programadores podem escrever contratos inteligentes Ethereum diretamente com bytecode. No entanto, escrever diretamente com bytecode dificilmente é usado porque é mais técnico e propenso a erros. Como tal, usar linguagens de alto nível como o Solidity permite que os programadores se concentrem na lógica e na funcionalidade do código em vez de lidar com as complexidades da escrita em bytecode. Como resultado, os programadores podem codificar com mais eficiência e concentrar-se mais na criação de contratos inteligentes que são mais fáceis de ler, escrever e manter.

O Solidity está sujeito a atualizações periódicas de versão, que são lançadas no Github. Os contratos inteligentes são imutáveis, o que significa que, uma vez implementados na cadeia, não podem ser revertidos. Porque o Solidity em si está em constante evolução, a imutabilidade dos contratos inteligentes afeta-o porque quaisquer erros ou falhas no código de um contrato não podem ser facilmente corrigidos uma vez que está ativo. A razão é que cada versão tem comportamentos e características distintas, o que pode influenciar a funcionalidade do contrato e como interage com outros elementos dentro do ecossistema Ethereum.

Nos últimos tempos, os programadores preferiram usar contratos de proxy e contratos actualizáveis. Os contratos de proxy permitem a execução do código de outro contrato. Os proxies atuam como intermediários, encaminhando chamadas e transações para o contrato pretendido, permitindo funcionalidades adicionais, como controle de acesso ou registro. Os contratos atualizáveis envolvem essencialmente contratos inteligentes que podem ser atualizados sem perder o seu estado original.

Deve notar-se que a versão do Solidity usada no momento da criação do contrato inteligente também é essencial, porque isso determinará o comportamento e as características do contrato inteligente. Cada linha de código-fonte em cada contrato inteligente Solidity, por mais simples que seja, deve começar com uma declaração de qual versão do compilador Solidity deve ser usada para esse pedaço de código específico. Esta declaração é o que é conhecido como a “versão pragma”.

Principais características do Solidity Language

O Solidity é considerado como a porta de entrada para o mundo das aplicações descentralizadas e dos contratos inteligentes baseados em blockchain. Algumas características-chave que tornam o Solidity uma linguagem de programação tão produtiva incluem o seguinte.

Funções incorporadas e tipos de dados

Os programadores não precisam de escrever declarações condicionais ou loops para executar ações dependentes de certas condições. Em vez disso, podem especificar as condições diretamente no seu código-fonte, e o contrato inteligente executará a ação específica apenas quando essas condições forem cumpridas. Isso torna o processo de codificação muito mais gerenciável.

O Solidity também suporta os tipos de dados mais comuns, como inteiros, números de ponto flutuante, strings, matrizes e mapas. Os programadores também podem definir os seus próprios tipos de dados e usá-los nos seus contratos inteligentes.

Ambiente de Codificação

O compilador do Solidity verifica consistentemente se há erros no código enquanto o escreve e alerta-o sobre possíveis problemas. Isto é especialmente útil no desenvolvimento de DAps grandes e complexos e contratos inteligentes.

Casos de uso da Linguagem de Programação Solidity

A solidez pode ser normalmente usada para criar contratos inteligentes que melhoram a transparência e a rastreabilidade na gestão da cadeia de abastecimento. Os contratos inteligentes com base na solidez também podem ajudar a prevenir a falsificação e melhorar a confiança no processo da cadeia de abastecimento, registando transações e verificando a autenticidade dos produtos.

O Solidity é frequentemente utilizado para desenvolver jogos baseados em blockchain e mundos virtuais com propriedade de ativos, economias no jogo e escassez comprovada. Solidity abre novas possibilidades para ativos digitais únicos e interações com os jogadores. Os desenvolvedores também usaram o Solidity para criar lógica de troca descentralizada, mecanismos de leilão, protocolos de empréstimo, pagamentos condicionais, etc.

Além disso, o Solidity é usado para implementar NFTs. Também permitiu a criação de DAOs, que são organizações autónomas que operam com contratos inteligentes, permitindo, por sua vez, uma tomada de decisão e governação transparentes.

Projetos de Apoio à Solidity

Avalanche

O Avalanche é uma plataforma blockchain de ponta que ganhou algum destaque no mundo do DeFie e dos contratos inteligentes. No Avalanche, as transações são processadas em segundos, tornando-se uma plataforma eficiente para aplicações DeFie e Troca de Token. A sua compatibilidade EVM permite que funcione perfeitamente com contratos inteligentes escritos pelo Solidith, contribuindo também para a adoção do Avalanche pelos programadores.

Monax

Monax é um projeto blockchain líder concebido para revolucionar, simplificar e otimizar a forma como as empresas lidam com acordos legais. A plataforma permite a criação de acordos juridicamente vinculativos e automatiza vários aspetos da execução e gestão de contratos. É particularmente benéfico para as empresas, uma vez que a Monax oferece-lhes uma maneira segura e eficiente de gerir todo o ciclo de vida do contrato.

A Solidity ajuda a ajudar a criação de contratos inteligentes auto-executáveis, enquanto a Monax estende esta tecnologia a acordos legais, permitindo que as empresas definam as suas regras contratuais num formato programável e auto-executável.

Solidez vs. Ferrugem

Solidity e Rust partilham algumas semelhanças básicas. Por um lado, ambas as linguagens de programação oferecem compatibilidade com várias cadeias. Embora o Solidity tenha sido concebido principalmente para o Ethereum, suporta blockchains de camada 2, sidechains e, claro, blockchains de camada 1 compatíveis com EVM, como Moonbeam e cadeia Avalanche-C. O Rust também suporta um glossário de blockchains como Near e Solana enquanto continua a ser a linguagem de programação que inspirou as linguagens Move e Sui.

Além disso, ambas as línguas são línguas completas de Turing. Isto significa que ambas as linguagens podem resolver qualquer problema computacional independentemente da complexidade. As linguagens de programação herdaram esta funcionalidade da máquina de Turing, desenvolvida por Alan Turing.

Por outro lado, Solidity e Rust possuem diferenças gritantes. Por exemplo, o Solidity é uma linguagem de alto nível que oferece um elevado nível de abstração da arquitectura do sistema informático. Como resultado, o Solidity é mais fácil de aprender e usar, tornando-o numa linguagem mais orientada para o utilizador. Por outro lado, o Rust é uma linguagem de baixo nível mais próxima do hardware do computador e fornece boa eficiência de memória e velocidade, tornando-a uma linguagem mais orientada para a máquina.

Além disso, ambas as linguagens de programação usam paradigmas de programação diferentes. Um paradigma de programação é a abordagem usada para resolver um problema. A solidez, por um lado, é uma linguagem orientada a objetos, uma vez que usa o paradigma orientado a objetos para resolver problemas. Por outro lado, o Rust é uma linguagem multiparadigma, o que significa que permite usar diferentes paradigmas ou abordagens para resolver problemas. Alguns dos paradigmas que o Rust suporta são orientados a objetos, funcionais e imperativos, entre vários outros.

Solidez vs. JavaScript

Solidity e Javascript são duas das linguagens de programação mais comuns mas partilham muito poucas semelhanças. O Javascript foi uma das maiores inspirações para o Solidity, mas agora a única semelhança significativa é que o Solidity usa a palavra-chave 'function' para definir funções. A sintaxe do Solidity também tem uma aparência semelhante ao JavaScript, mas isso é um pouco enganoso porque o Solidity e o JavaScript operam de forma bastante diferente.

Por outro lado, ambas as línguas diferem muito. O JavaScript pode ser executado diretamente, enquanto o Solidity requer compilação porque o JavaScript é uma linguagem interpretada, não uma linguagem compilada como o Solidity. Além disso, o Solidity tem a capacidade de transferir dinheiro. No entanto, esta não é uma capacidade incorporada, pelo que os programadores devem utilizar uma interface de programação de aplicação (API) externa.

Outra diferença entre as duas linguagens é que com o Solidity, uma vez que um contrato inteligente é implementado no Ethereum, é imutável e o código não pode mais ser editado. O JavaScript também não permite a interação direta com o código em execução noutros servidores, mas se o servidor oferecer uma API que permita o acesso, o programador pode editar o código.

Os melhores recursos para aprender solidez

Aprender Solidity é um dos primeiros passos a dar quando se torna um programador web3, uma vez que é a linguagem de programação fundamental para programadores que desejam criar e implementar contratos inteligentes na rede Ethereum. Ao escolher um curso para aprender sobre Solidity, é crucial avaliar os tópicos, o formato e outros recursos suplementares fornecidos. Para obter o melhor conhecimento sobre Solidity, pode considerar alguns recursos para usar, incluindo o seguinte.

Gate Learn

O Gate Learn oferece um curso intitulado “Plataformas de Desenvolvimento Blockchain e Contratos Inteligentes”, onde fornecem uma visão geral das plataformas populares de desenvolvimento de blockchain, bem como das suas principais características. Embora seja um curso abrangente, oferece uma visão chave sobre o processo de desenvolvimento de uma aplicação básica de blockchain usando o Solidity.

Com este curso, aprenderá a configurar o ambiente de desenvolvimento, escrever o contrato inteligente, definir as variáveis de estado do contrato, criar funções para interagir com o contrato, compilar e implementar o contrato.

O Gate Learn também oferece um curso intitulado “Contratos Inteligentes 101: Uma Introdução Básica” onde pode aprender sobre os fundamentos dos contratos inteligentes e os seus casos de uso em todas as indústrias e também interagir com contratos externos e implementar os seus próprios contratos inteligentes usando o MetaMask

Academia WTF

A WTF Academy é uma plataforma de aprendizagem de blockchain de código aberto e orientada para a comunidade que oferece cursos completos sobre desenvolvimento web e blockchain, como JavaScript, análise on-chain, EVM Opcodes e Solidity. É patrocinado pela Fundação Ethereum, StarkWare e Optimism. Também recebeu doações do Gitcoin e do Mirror.

A WTF Academy oferece cinco cursos de Soliditypara novatos ( Solidity 101, 102, 103, Solidity 104 Security e Solidity 104 Tx Analysis). Estes cursos são gratuitos e fornecem certificados após a conclusão.

O Curso Completo de Solidez — Blockchain — Zero to Expert [Udemy]

Este é um curso pago da Udemy que serve como uma solução completa para aprender Solidity. O curso irá ajudá-lo a começar do zero com os tópicos mais fundamentais e irá levá-lo a um nível avançado, onde pode construir contratos inteligentes complexos e DApps. É um curso completo, por isso não vai precisar de quaisquer recursos suplementares para obter toda a informação necessária.

Neste curso, vai aprender sobre a linguagem de programação Solidity, como escrever contratos inteligentes e também entender EVM, a cadeia de blocos Ethereum e como funcionam outras plataformas blockchain. Também pode aplicar os seus conhecimentos com mais de 30 tarefas e desafios.

Aprender Solidity: Linguagem de Programação para Contratos Inteligentes Ethereum [Blockchain Council]

O Blockchain Council desenvolveu recentemente o Programa Learn Solidity para ajudar os programadores a compreender o básico dentro de algumas horas. Com este curso gratuito, deve ter uma ideia clara sobre o desenvolvimento de DApps na cadeia de blocos Ethereum.

O curso vai ensinar-lhe os fundamentos do Ethereum, contratos inteligentes e outras plataformas blockchain. Também aprenderá a instalar e configurar o Solidity Development Environment, construir aplicações em tempo real e implementar contratos inteligentes no Solidity.

Bootcamp do desenvolvedor Ethereum Blockchain com solidez [Udemy]

Este curso não requer conhecimentos prévios para ser concluído. O curso dar-lhe-á uma compreensão teórica e prática dos contratos inteligentes e aprenderá a usar as principais ferramentas de desenvolvimento do Ethereum. Também apresenta tutoriais em vídeo passo a passo para facilitar uma melhor compreensão.

Este curso é um curso pago e é recomendado para aqueles que pretendem ser desenvolvedores Ethereum. Concluir este curso irá torná-lo proficiente em Solidity, Web3, Remix, Metamask, Truffle e outros conceitos de blockchain.

Autor: Tamilore
Tradutor(a): Cedar
Revisor(es): Matheus、KOWEI、Ashley He
* As informações não se destinam a ser e não constituem aconselhamento financeiro ou qualquer outra recomendação de qualquer tipo oferecido ou endossado pela Gate.io.
* Este artigo não pode ser reproduzido, transmitido ou copiado sem fazer referência à Gate.io. A violação é uma violação da Lei de Direitos de Autor e pode estar sujeita a ações legais.
Comece agora
Registe-se e ganhe um cupão de
100 USD
!