No Ethereum, cada operação tem um custo de gás associado. Alguns custos típicos incluem:
É importante compreendê-lo porque muitas técnicas de otimização de gás envolvem a negociação de operações mais caras por outras mais baratas.
Com o Remix, torna-se consideravelmente simples discernir o gás consumido pelas operações do nosso contrato.
Análise estática: Navegue até ao separador Análise
no Remix (representado por um ícone de microscópio). Esta poderosa ferramenta irá fornecer informações sobre potenciais armadilhas e oportunidades de otimização no seu código.
Implantar o & Interact: Depois de implantar o seu contrato (como fez na Lição 1), cada interação exibirá uma estimativa de gás. Quando chama uma função, o gás utilizado é apresentado no painel inferior direito.
Painel de detalhes: Ao implantar ou interagir com uma função, clique na seta para baixo no log de transações (canto inferior direito). Isto expande o registo, mostrando os custos detalhados do gás para a transação.
Vamos avaliar um contrato de amostra e as suas operações:
Solidez
//Identificador de licença SPDX: GPL-3.0
solidez do pragma ^0.8.9;
contrato GasDemo {
contagem pública uint256;
mapeamento (endereço = > uint256) saldos públicos;
incremento de função () público {
count += 1;
}
função updateBalance (uint256 NewBalance) público {
balances[msg.sender] = newBalance;
}
}
Implemente o contrato GasDemo
no Goerli Testnet via Remix.
Interaja com a função de incremento
algumas vezes.
Verifique o gás utilizado nos detalhes da transação.
Agora, interaja com a função UpdateBalance, definindo saldos
diferentes.
Mais uma vez, verifique o gás utilizado.
Reflita sobre:
Acabou de aprofundar a sua compreensão das complexidades do gás nos contratos inteligentes da Ethereum. Ao praticar com o Remix, pode visualizar e perceber como diferentes operações impactam o gás total de uma transação. Na nossa próxima lição, entraremos em técnicas de otimização, onde aprenderá a tornar os seus contratos mais eficientes em termos de gás.
Fique curioso e continue a experimentar!
No Ethereum, cada operação tem um custo de gás associado. Alguns custos típicos incluem:
É importante compreendê-lo porque muitas técnicas de otimização de gás envolvem a negociação de operações mais caras por outras mais baratas.
Com o Remix, torna-se consideravelmente simples discernir o gás consumido pelas operações do nosso contrato.
Análise estática: Navegue até ao separador Análise
no Remix (representado por um ícone de microscópio). Esta poderosa ferramenta irá fornecer informações sobre potenciais armadilhas e oportunidades de otimização no seu código.
Implantar o & Interact: Depois de implantar o seu contrato (como fez na Lição 1), cada interação exibirá uma estimativa de gás. Quando chama uma função, o gás utilizado é apresentado no painel inferior direito.
Painel de detalhes: Ao implantar ou interagir com uma função, clique na seta para baixo no log de transações (canto inferior direito). Isto expande o registo, mostrando os custos detalhados do gás para a transação.
Vamos avaliar um contrato de amostra e as suas operações:
Solidez
//Identificador de licença SPDX: GPL-3.0
solidez do pragma ^0.8.9;
contrato GasDemo {
contagem pública uint256;
mapeamento (endereço = > uint256) saldos públicos;
incremento de função () público {
count += 1;
}
função updateBalance (uint256 NewBalance) público {
balances[msg.sender] = newBalance;
}
}
Implemente o contrato GasDemo
no Goerli Testnet via Remix.
Interaja com a função de incremento
algumas vezes.
Verifique o gás utilizado nos detalhes da transação.
Agora, interaja com a função UpdateBalance, definindo saldos
diferentes.
Mais uma vez, verifique o gás utilizado.
Reflita sobre:
Acabou de aprofundar a sua compreensão das complexidades do gás nos contratos inteligentes da Ethereum. Ao praticar com o Remix, pode visualizar e perceber como diferentes operações impactam o gás total de uma transação. Na nossa próxima lição, entraremos em técnicas de otimização, onde aprenderá a tornar os seus contratos mais eficientes em termos de gás.
Fique curioso e continue a experimentar!