บทเรียนที่ 4

Aprimorando a eficiência do código com modificadores

Os modificadores no Solidity são um recurso poderoso que nos permite incorporar verificações preliminares em nossas funções, resultando em um código mais legível e eficiente.

Apresentando Modificadores

Vamos implementar um modificador em nosso contrato Marketplace . Definiremos um modificador onlySeller , que verificará se o chamador de uma função é de fato o vendedor de um item.

Aqui está nosso contrato Marketplace atualizado com o modificador onlySeller :

Solidez 
 // Identificador de licença SPDX: solidez do pragma MIT 
 ^0.8.6; 

 contract Marketplace { 
 // Define uma nova estrutura para os itens 
 struct Item {
        string name;
        uint price;
        address payable seller;
        bool forSale;
    }

    // Array para armazenar todos os itens 
 Item[] public items; 

 // Modificador que verifica se o chamador é o vendedor de um item 
 modifier onlySeller(uint _itemId) {
        require(msg.sender == items[_itemId].seller, "Only the owner can execute this");
        _;
    }

    // Função para remover um item da venda, atualizada com o modificador 'onlySeller' 
 function removeItemFromSale(uint _itemId) public onlySeller(_itemId) {
        items[_itemId].forSale = false;
    }

    // Função para atualizar o preço de um item, atualizado com o modificador 'onlySeller' 
 function updateItemPrice(uint _itemId, uint _newPrice) public onlySeller(_itemId) {
        items[_itemId].price = _newPrice;
    }
}

Com o modificador onlySeller em vigor, tornamos nossas funções removeItemFromSale e updateItemPrice mais eficientes e legíveis.

Implantando e interagindo com o contrato aprimorado

Depois de aprimorar o contrato Marketplace , siga as mesmas etapas das lições anteriores para compilá-lo e implantá-lo.

Depois que o contrato for implantado, você poderá interagir com ele como antes. Com as melhorias que fizemos nesta lição, nosso contrato é mais eficiente e mais fácil de ler e manter.

Parabéns! Agora você aprendeu como criar, aprimorar e interagir com um mercado descentralizado básico no blockchain Ethereum. Isso marca o fim do nosso curso para iniciantes sobre desenvolvimento de contratos inteligentes com Solidity. Continue experimentando, aprendendo e construindo!

Conclusão

Parabéns! Você chegou ao final deste curso para iniciantes sobre desenvolvimento de contratos inteligentes usando Solidity. Ao longo de quatro aulas, exploramos a criação, implantação e interação com contratos inteligentes em um ambiente Ethereum simulado, usando o IDE Remix.

Vamos recapitular o que alcançamos:

  • Lição 1: Introduziu os fundamentos do Ethereum, blockchain e contratos inteligentes. Desenvolvemos nosso primeiro contrato inteligente simples, Item.sol, que definia um único item que poderia ser comprado ou vendido.
  • Lição 2: Ampliamos nosso contrato inicial para criar um contrato Marketplace.sol , que permitia a criação, listagem e compra de vários itens.
  • Lição 3: Adicionamos mais funcionalidades ao nosso mercado, introduzindo métodos para remover itens da venda e atualizar o preço de um item.
  • Lição 4: Melhoramos a legibilidade e a eficiência do nosso contrato inteligente implementando um recurso do Solidity chamado ‘modificadores’. Aprendemos como tornar nosso código mais simplificado e seguro.
    Ao longo desta jornada, você não apenas ganhou uma base sólida em Solidity e no desenvolvimento de contratos inteligentes, mas também deu os primeiros passos para se tornar um desenvolvedor de blockchain. Você aprendeu a pensar em aplicativos descentralizados e sentiu um gostinho do potencial inovador da tecnologia blockchain.

Seguindo em frente, existem vários caminhos para você explorar. Você pode se aprofundar no Solidity, aprendendo sobre recursos mais avançados e considerações de segurança. Você pode explorar outras plataformas blockchain como Polkadot, Cardano ou Binance Smart Chain. Alternativamente, você pode querer aprender sobre desenvolvimento front-end para dApps usando Web3.js ou Ethers.js, ou sobre a implantação de seus contratos na rede Ethereum real.

Seja qual for o caminho que você escolher, lembre-se sempre: o aprendizado mais eficaz é fazendo. Portanto, não tenha medo de experimentar, construir, quebrar e reconstruir. Cada desafio que você enfrenta é uma oportunidade de aprender e crescer.

Obrigado por participar deste curso e ingressar no emocionante mundo do desenvolvimento de blockchain. A revolução do blockchain está apenas começando e desenvolvedores como você estão na vanguarda. Portanto, continue aprendendo, continue construindo e, o mais importante, divirta-se!

Boa codificação!

ข้อจำกัดความรับผิด
* การลงทุนคริปโตมีความเสี่ยงสูง โปรดดำเนินการด้วยความระมัดระวัง หลักสูตรนี้ไม่ได้มีไว้เพื่อเป็นคำแนะนำในการลงทุน
* หลักสูตรนี้สร้างขึ้นโดยผู้เขียนที่ได้เข้าร่วม Gate Learn ความคิดเห็นของผู้เขียนไม่ได้มาจาก Gate Learn
แคตตาล็อก
บทเรียนที่ 4

Aprimorando a eficiência do código com modificadores

Os modificadores no Solidity são um recurso poderoso que nos permite incorporar verificações preliminares em nossas funções, resultando em um código mais legível e eficiente.

Apresentando Modificadores

Vamos implementar um modificador em nosso contrato Marketplace . Definiremos um modificador onlySeller , que verificará se o chamador de uma função é de fato o vendedor de um item.

Aqui está nosso contrato Marketplace atualizado com o modificador onlySeller :

Solidez 
 // Identificador de licença SPDX: solidez do pragma MIT 
 ^0.8.6; 

 contract Marketplace { 
 // Define uma nova estrutura para os itens 
 struct Item {
        string name;
        uint price;
        address payable seller;
        bool forSale;
    }

    // Array para armazenar todos os itens 
 Item[] public items; 

 // Modificador que verifica se o chamador é o vendedor de um item 
 modifier onlySeller(uint _itemId) {
        require(msg.sender == items[_itemId].seller, "Only the owner can execute this");
        _;
    }

    // Função para remover um item da venda, atualizada com o modificador 'onlySeller' 
 function removeItemFromSale(uint _itemId) public onlySeller(_itemId) {
        items[_itemId].forSale = false;
    }

    // Função para atualizar o preço de um item, atualizado com o modificador 'onlySeller' 
 function updateItemPrice(uint _itemId, uint _newPrice) public onlySeller(_itemId) {
        items[_itemId].price = _newPrice;
    }
}

Com o modificador onlySeller em vigor, tornamos nossas funções removeItemFromSale e updateItemPrice mais eficientes e legíveis.

Implantando e interagindo com o contrato aprimorado

Depois de aprimorar o contrato Marketplace , siga as mesmas etapas das lições anteriores para compilá-lo e implantá-lo.

Depois que o contrato for implantado, você poderá interagir com ele como antes. Com as melhorias que fizemos nesta lição, nosso contrato é mais eficiente e mais fácil de ler e manter.

Parabéns! Agora você aprendeu como criar, aprimorar e interagir com um mercado descentralizado básico no blockchain Ethereum. Isso marca o fim do nosso curso para iniciantes sobre desenvolvimento de contratos inteligentes com Solidity. Continue experimentando, aprendendo e construindo!

Conclusão

Parabéns! Você chegou ao final deste curso para iniciantes sobre desenvolvimento de contratos inteligentes usando Solidity. Ao longo de quatro aulas, exploramos a criação, implantação e interação com contratos inteligentes em um ambiente Ethereum simulado, usando o IDE Remix.

Vamos recapitular o que alcançamos:

  • Lição 1: Introduziu os fundamentos do Ethereum, blockchain e contratos inteligentes. Desenvolvemos nosso primeiro contrato inteligente simples, Item.sol, que definia um único item que poderia ser comprado ou vendido.
  • Lição 2: Ampliamos nosso contrato inicial para criar um contrato Marketplace.sol , que permitia a criação, listagem e compra de vários itens.
  • Lição 3: Adicionamos mais funcionalidades ao nosso mercado, introduzindo métodos para remover itens da venda e atualizar o preço de um item.
  • Lição 4: Melhoramos a legibilidade e a eficiência do nosso contrato inteligente implementando um recurso do Solidity chamado ‘modificadores’. Aprendemos como tornar nosso código mais simplificado e seguro.
    Ao longo desta jornada, você não apenas ganhou uma base sólida em Solidity e no desenvolvimento de contratos inteligentes, mas também deu os primeiros passos para se tornar um desenvolvedor de blockchain. Você aprendeu a pensar em aplicativos descentralizados e sentiu um gostinho do potencial inovador da tecnologia blockchain.

Seguindo em frente, existem vários caminhos para você explorar. Você pode se aprofundar no Solidity, aprendendo sobre recursos mais avançados e considerações de segurança. Você pode explorar outras plataformas blockchain como Polkadot, Cardano ou Binance Smart Chain. Alternativamente, você pode querer aprender sobre desenvolvimento front-end para dApps usando Web3.js ou Ethers.js, ou sobre a implantação de seus contratos na rede Ethereum real.

Seja qual for o caminho que você escolher, lembre-se sempre: o aprendizado mais eficaz é fazendo. Portanto, não tenha medo de experimentar, construir, quebrar e reconstruir. Cada desafio que você enfrenta é uma oportunidade de aprender e crescer.

Obrigado por participar deste curso e ingressar no emocionante mundo do desenvolvimento de blockchain. A revolução do blockchain está apenas começando e desenvolvedores como você estão na vanguarda. Portanto, continue aprendendo, continue construindo e, o mais importante, divirta-se!

Boa codificação!

ข้อจำกัดความรับผิด
* การลงทุนคริปโตมีความเสี่ยงสูง โปรดดำเนินการด้วยความระมัดระวัง หลักสูตรนี้ไม่ได้มีไว้เพื่อเป็นคำแนะนำในการลงทุน
* หลักสูตรนี้สร้างขึ้นโดยผู้เขียนที่ได้เข้าร่วม Gate Learn ความคิดเห็นของผู้เขียนไม่ได้มาจาก Gate Learn