Solana Web3.js 2.x: Atualização significativa de uma biblioteca JavaScript rica em funcionalidades
Solana Web3.js, como uma poderosa biblioteca JavaScript, lançou oficialmente a versão 2.x em novembro deste ano. Em comparação com a versão 1.x, a nova versão trouxe muitas mudanças significativas. Este artigo irá fornecer uma visão geral dessas principais mudanças, preparando os desenvolvedores para a migração futura.
Comparação de Versões
A utilização da versão 1.x é relativamente simples, contendo apenas um pacote @solana/web3.js, que adota um design baseado em classes e encapsula uma grande quantidade de operações comuns. No entanto, este design também trouxe alguns problemas, como o tamanho maior da biblioteca de código e a necessidade dos dispositivos dos usuários baixarem o arquivo completo da biblioteca.
A versão 2.x adotou um design modular, dividindo a biblioteca de código original em vários pequenos módulos, como @solana/accounts, @solana/codecs, @solana/rpc, entre outros. A nova versão abandonou a implementação baseada em classes, adotando mais funções individuais, o que favorece a otimização durante a construção do código JavaScript. De acordo com estatísticas, as aplicações que utilizam a nova versão geralmente conseguem uma otimização de 30% em tamanho; se apenas uma pequena quantidade de funcionalidades for utilizada, a proporção de otimização pode ser ainda maior.
Outra característica importante da versão 2.x é a ausência de dependências. Considerando os recentes ataques à cadeia de suprimentos nas versões 1.95.5 e 1.95.6, a redução de dependências externas pode diminuir significativamente os riscos de segurança. Atualmente, a versão 2.x eliminou todas as dependências externas.
Pontos de mudança importantes
conectar
A versão 2.x implementa a funcionalidade de conexão de uma forma mais funcional. Por exemplo, ao enviar uma transação, será automaticamente iniciada uma solicitação HTTPS e estabelecida uma conexão WSS para assinar o estado da transação, retornando o hash da transação após a confirmação.
par de chaves
Na nova versão, as classes Keypair e PublicKey não existem mais, sendo substituídas por algumas funções. Por exemplo, pode-se usar await generateKeyPair() para gerar um par de chaves. A nova implementação utiliza o API Web Crypto do JavaScript sempre que possível, utilizando a implementação nativa de Ed25519.
enviar transação
Na versão 2.x, não existem mais as classes Transaction e VersionedTransaction. Os métodos relacionados ao System Program também precisam ser importados de outros lugares. Por exemplo, o comando transfer precisa chamar a função getTransferSolInstruction no @solana-program/system.
A nova versão oferece a forma pipe, comumente usada em programação funcional. As transações não são mais iniciadas através da Connection, mas sim através da geração de funções específicas por um RPC Provider definido. Embora essa abordagem aumente a quantidade de código, ela oferece uma maior personalização.
Suporte para React
O projeto @solana/web3.js também inclui a biblioteca @solana/react, que fornece alguns React Hooks e possui funcionalidades integradas como signIn.
Resumo
A versão 2.x do @solana/web3.js demonstra o compromisso da equipe Solana com a melhoria contínua. A nova versão oferece aos desenvolvedores uma maneira eficiente, flexível e personalizável de interagir com a rede Solana, o que promete impulsionar o desenvolvimento e a aplicação da plataforma.
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
10 gostos
Recompensa
10
6
Partilhar
Comentar
0/400
MemecoinResearcher
· 5h atrás
tbh sol web3 2.0 é incrível mesmo
Ver originalResponder0
SelfSovereignSteve
· 5h atrás
sol voltou a ser atualizado
Ver originalResponder0
GweiWatcher
· 5h atrás
A melhoria de desempenho é tão grande, vamos lá!
Ver originalResponder0
LiquiditySurfer
· 5h atrás
a sola finalmente se destacou!!!
Ver originalResponder0
SerNgmi
· 5h atrás
Esta onda é realmente bullp.
Ver originalResponder0
BankruptcyArtist
· 5h atrás
tão confiável, há esperança de recuperar o investimento
Solana Web3.js 2.x grande atualização: design modular melhora desempenho e segurança
Solana Web3.js 2.x: Atualização significativa de uma biblioteca JavaScript rica em funcionalidades
Solana Web3.js, como uma poderosa biblioteca JavaScript, lançou oficialmente a versão 2.x em novembro deste ano. Em comparação com a versão 1.x, a nova versão trouxe muitas mudanças significativas. Este artigo irá fornecer uma visão geral dessas principais mudanças, preparando os desenvolvedores para a migração futura.
Comparação de Versões
A utilização da versão 1.x é relativamente simples, contendo apenas um pacote @solana/web3.js, que adota um design baseado em classes e encapsula uma grande quantidade de operações comuns. No entanto, este design também trouxe alguns problemas, como o tamanho maior da biblioteca de código e a necessidade dos dispositivos dos usuários baixarem o arquivo completo da biblioteca.
A versão 2.x adotou um design modular, dividindo a biblioteca de código original em vários pequenos módulos, como @solana/accounts, @solana/codecs, @solana/rpc, entre outros. A nova versão abandonou a implementação baseada em classes, adotando mais funções individuais, o que favorece a otimização durante a construção do código JavaScript. De acordo com estatísticas, as aplicações que utilizam a nova versão geralmente conseguem uma otimização de 30% em tamanho; se apenas uma pequena quantidade de funcionalidades for utilizada, a proporção de otimização pode ser ainda maior.
Outra característica importante da versão 2.x é a ausência de dependências. Considerando os recentes ataques à cadeia de suprimentos nas versões 1.95.5 e 1.95.6, a redução de dependências externas pode diminuir significativamente os riscos de segurança. Atualmente, a versão 2.x eliminou todas as dependências externas.
Pontos de mudança importantes
conectar
A versão 2.x implementa a funcionalidade de conexão de uma forma mais funcional. Por exemplo, ao enviar uma transação, será automaticamente iniciada uma solicitação HTTPS e estabelecida uma conexão WSS para assinar o estado da transação, retornando o hash da transação após a confirmação.
par de chaves
Na nova versão, as classes Keypair e PublicKey não existem mais, sendo substituídas por algumas funções. Por exemplo, pode-se usar await generateKeyPair() para gerar um par de chaves. A nova implementação utiliza o API Web Crypto do JavaScript sempre que possível, utilizando a implementação nativa de Ed25519.
enviar transação
Na versão 2.x, não existem mais as classes Transaction e VersionedTransaction. Os métodos relacionados ao System Program também precisam ser importados de outros lugares. Por exemplo, o comando transfer precisa chamar a função getTransferSolInstruction no @solana-program/system.
A nova versão oferece a forma pipe, comumente usada em programação funcional. As transações não são mais iniciadas através da Connection, mas sim através da geração de funções específicas por um RPC Provider definido. Embora essa abordagem aumente a quantidade de código, ela oferece uma maior personalização.
Suporte para React
O projeto @solana/web3.js também inclui a biblioteca @solana/react, que fornece alguns React Hooks e possui funcionalidades integradas como signIn.
Resumo
A versão 2.x do @solana/web3.js demonstra o compromisso da equipe Solana com a melhoria contínua. A nova versão oferece aos desenvolvedores uma maneira eficiente, flexível e personalizável de interagir com a rede Solana, o que promete impulsionar o desenvolvimento e a aplicação da plataforma.