Então estou a analisar este padrão Solidity onde define uma biblioteca personalizada chamada GoonLib com uma função add para lidar com operações uint256. Depois cria um tipo personalizado NumberoGoono (basicamente um wrapper de uint256) e associa a biblioteca a ele usando a palavra-chave 'using'.
A questão é, você inicializa uma variável de estado interna _number com um valor de 1, depois chama _number.add(5) para executar a função da biblioteca. É uma forma limpa de estender a funcionalidade do tipo sem sobrecarregar a lógica do contrato principal.
Mas honestamente—por que razão estruturá-lo desta forma? Quero dizer, o padrão funciona para operações complexas onde quer manter as coisas modulares. Se estiver a fazer cálculos em lote ou cálculos matemáticos sofisticados, anexar bibliotecas a tipos personalizados mantém o seu código organizado. Para somas simples, no entanto? Parece exagero. Depende do que está realmente a construir.
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
22 Curtidas
Recompensa
22
9
Repostar
Compartilhar
Comentário
0/400
WalletAnxietyPatient
· 01-18 17:14
ngl, este padrão de wrapper realmente é só para parecer chique, usar isso para uma soma simples realmente parece um pouco exagerado.
Ver originalResponder0
ShibaOnTheRun
· 01-18 03:49
O padrão de wrapper do tipo NGL ainda é necessário em projetos grandes, enquanto em projetos pequenos de brinquedo realmente não faz muito sentido
Ver originalResponder0
MysteryBoxBuster
· 01-17 05:04
O modo NGL está um pouco excessivamente elaborado... uma simples soma não precisaria ser tão complicado assim, né?
Ver originalResponder0
GweiWatcher
· 01-17 00:51
O tipo de ligação de carteira realmente é difícil de entender... Soma simples realmente não precisa ser tão complicada assim
Ver originalResponder0
NoStopLossNut
· 01-15 18:02
Este padrão de ligação de funções de biblioteca parece um pouco de "modularização pela modularização"... Será que uma simples soma realmente precisa de tanta complexidade?
Ver originalResponder0
WhaleInTraining
· 01-15 17:58
Este NumberoGoono é mesmo fraco, por que complicar tanto uma soma simples?
Ver originalResponder0
UncommonNPC
· 01-15 17:55
ngl, esta operação avançada usando library é realmente satisfatória em projetos grandes, mas contratos inteligentes pequenos realmente não precisam de tanta complexidade
Ver originalResponder0
StakeHouseDirector
· 01-15 17:55
ngl, já estou farto deste modo, a soma simples realmente não precisa de tanta complicação
Ver originalResponder0
GasFeeCrier
· 01-15 17:54
Amigo, esse naming é um pouco engraçado, NumberoGoono... parece o nome de uma meme moeda. Mas a biblioteca using realmente fez um trabalho bem limpo.
Então estou a analisar este padrão Solidity onde define uma biblioteca personalizada chamada GoonLib com uma função add para lidar com operações uint256. Depois cria um tipo personalizado NumberoGoono (basicamente um wrapper de uint256) e associa a biblioteca a ele usando a palavra-chave 'using'.
A questão é, você inicializa uma variável de estado interna _number com um valor de 1, depois chama _number.add(5) para executar a função da biblioteca. É uma forma limpa de estender a funcionalidade do tipo sem sobrecarregar a lógica do contrato principal.
Mas honestamente—por que razão estruturá-lo desta forma? Quero dizer, o padrão funciona para operações complexas onde quer manter as coisas modulares. Se estiver a fazer cálculos em lote ou cálculos matemáticos sofisticados, anexar bibliotecas a tipos personalizados mantém o seu código organizado. Para somas simples, no entanto? Parece exagero. Depende do que está realmente a construir.