Lição 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!

Isenção de responsabilidade

* O investimento em criptomoedas envolve grandes riscos. Prossiga com cautela. O curso não se destina a servir de orientação para investimentos.

* O curso foi criado pelo autor que entrou para o Gate Learn. As opiniões compartilhadas pelo autor não representam o Gate Learn.