Solana Web3.js 2.x: A programação funcional leva a uma nova era de otimização de desempenho

robot
Geração do resumo em andamento

Solana Web3.js 2.x: A nova era da programação funcional

A versão 2.x do Solana Web3.js foi lançada em novembro deste ano, trazendo mudanças significativas em comparação com a versão 1.x. Este artigo irá fazer um resumo dessas principais alterações, para ajudar os desenvolvedores a se prepararem para a migração futura.

Série para iniciantes em Web3: agora atualize @solana/web3.js 2.x para iniciar a programação funcional

Comparação de versões

A utilização da versão 1.x é relativamente simples, necessitando apenas do pacote @solana/web3.js para cobrir todas as funcionalidades. É baseado em um design orientado a classes, como a classe Connection, que oferece métodos ricos para atender às necessidades de desenvolvimento. No entanto, esse design também resulta em alguns problemas, como um repositório de código excessivamente grande, onde os dispositivos dos usuários precisam baixar uma grande quantidade de código que pode não ser necessário.

A versão 2.x adotou um design modular, dividindo a base de código em vários pequenos módulos, como @solana/accounts, @solana/codecs, entre outros. A nova versão abandonou a implementação baseada em classes, optando por uma abordagem de função única, o que favorece a otimização durante a construção do código JavaScript. Segundo estatísticas oficiais, DApps que utilizam a nova versão geralmente conseguem uma otimização de volume de 30% ou mais.

No entanto, essa mudança também trouxe desafios na redação de documentação para a equipe da Solana, sendo crucial ajudar os desenvolvedores a encontrar rapidamente as funcionalidades necessárias. Atualmente, a nomenclatura dos módulos possui uma boa semântica, o que ajuda os desenvolvedores a compreenderem a finalidade de cada módulo.

É importante notar que a versão 2.x implementou a zero dependência, uma característica que é especialmente importante para aumentar a segurança, especialmente após os recentes eventos de ataques à cadeia de suprimentos.

Pontos de Mudança Importantes

conectar

A versão 2.x adotou uma abordagem mais funcional para lidar com conexões. Não utiliza mais a classe Connection, mas sim cria um emissor de pedidos configurando o endereço RPC.

par de chaves

Na nova versão, as classes Keypair e PublicKey foram substituídas por uma série de funções. Por exemplo, use await generateKeyPair() para gerar um par de chaves. A maioria dessas funções retorna uma Promise, aproveitando a API Web Crypto do JavaScript.

Enviar transação

A versão 2.x não utiliza mais as classes Transaction e VersionedTransaction. Os métodos relacionados ao System Program também precisam ser importados de outro lugar. A nova versão oferece uma forma de pipe, comum na programação funcional, permitindo uma construção de transações mais flexível.

A iniciação e confirmação de transações agora dependem mais da conexão WebSocket, o que exige uma maior estabilidade dos serviços dos fornecedores de RPC.

Suporte React

A nova versão também inclui a biblioteca @solana/react, que oferece alguns Hooks do React, com funcionalidades integradas como o signIn.

Resumo

O lançamento da 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 mais eficiente, flexível e personalizável de interagir com a rede Solana, com a esperança de impulsionar a adoção e o desenvolvimento adicional da plataforma.

Web3 Novato Série: Agora atualize @solana/web3.js 2.x para iniciar a programação funcional

SOL3.01%
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.
  • Recompensa
  • 8
  • Compartilhar
Comentário
0/400
PermabullPetevip
· 07-21 07:13
Esta onda é mesmo top
Ver originalResponder0
StakeOrRegretvip
· 07-21 01:55
Uau, a frente de desenvolvimento fez algo novo novamente.
Ver originalResponder0
ContractFreelancervip
· 07-20 17:43
Não é só uma mudança de casca?
Ver originalResponder0
LayoffMinervip
· 07-18 21:21
Os usuários antigos sabem, tudo depende do Solana para sustentar a família ++
Ver originalResponder0
GateUser-44a00d6cvip
· 07-18 21:19
tmd código vai ter que ser alterado novamente
Ver originalResponder0
OnchainGossipervip
· 07-18 21:17
Já está a falar de touros novamente – vamos ver se desta vez não falha.
Ver originalResponder0
GateUser-1a2ed0b9vip
· 07-18 21:10
Finalmente chegou esta atualização
Ver originalResponder0
BridgeTrustFundvip
· 07-18 20:56
O suporte do React finalmente chegou? Que alívio!
Ver originalResponder0
  • Marcar
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)