Publication de Solana Web3.js 2.x : un design modulaire améliorant la performance et la sécurité

Solana Web3.js 2.x Version : Mise à jour majeure d'une bibliothèque JavaScript riche en fonctionnalités

La bibliothèque JavaScript riche en fonctionnalités, Solana Web3.js, a officiellement lancé sa version 2.x en novembre de cette année. Par rapport à la version 1.x, la nouvelle version apporte des changements significatifs. Bien que l'utilisation de la version 2.x soit actuellement faible et que de nombreuses bibliothèques populaires n'aient pas encore migré, comprendre ces mises à jour est très utile pour les travaux de développement futurs.

Série pour débutants en Web3 : Mettez à jour @solana/web3.js 2.x maintenant pour activer la programmation fonctionnelle

Comparaison des versions

L'utilisation de la version 1.x est relativement simple, il suffit d'un paquet pour couvrir toutes les fonctionnalités. Elle est basée sur un design de classe, comme la classe Connection, qui encapsule un grand nombre d'opérations courantes. Cependant, ce design entraîne également quelques problèmes, comme une bibliothèque de code trop volumineuse, nécessitant que les appareils des utilisateurs téléchargent un grand nombre de codes qui pourraient ne pas être utilisés.

La version 2.x a adopté une approche modulaire, en divisant la base de code en plusieurs petits modules, tels que @solana/accounts, @solana/codecs, etc. La nouvelle version abandonne l'implémentation basée sur des classes et privilégie l'utilisation de fonctions individuelles, ce qui favorise l'optimisation lors de la construction du code JavaScript. Cette approche permet de réduire la quantité de code réellement téléchargée sur les appareils des utilisateurs. Selon les statistiques officielles, les applications utilisant la nouvelle version peuvent généralement bénéficier d'une optimisation de taille de 30 %.

Une caractéristique importante de la nouvelle version est l'absence de dépendances. Cette caractéristique est particulièrement importante pour réduire les risques de sécurité, surtout compte tenu des récentes attaques de la chaîne d'approvisionnement sur les versions 1.95.5 et 1.95.6.

Changements principaux

méthode de connexion

La version 2.x adopte une approche plus fonctionnelle pour gérer les connexions. La classe Connection n'est plus utilisée, mais un émetteur de requêtes est créé en configurant l'adresse de demande RPC.

traitement de la paire de clés

Dans la nouvelle version, les classes Keypair et PublicKey sont remplacées par une série de fonctions. Par exemple, la fonction generateKeyPair() est maintenant utilisée pour générer des paires de clés, et cette fonction renvoie une promesse. Ce changement tire parti de l'API Web Crypto de JavaScript et utilise l'implémentation native d'Ed25519.

Envoi de la transaction

La version 2.x n'utilise plus les classes Transaction et VersionedTransaction. Les méthodes liées au System Program ont également changé et doivent être importées depuis d'autres modules. La nouvelle version propose une forme de pipe couramment utilisée en programmation fonctionnelle, augmentant la personnalisation du code.

React prend en charge

Il est à noter que le projet inclut également la bibliothèque @solana/react, qui fournit certains hooks React, intégrant des fonctionnalités telles que signIn.

Résumé

La publication de la version 2.x de Solana Web3.js démontre l'engagement de l'équipe de développement envers l'amélioration continue. La nouvelle version offre aux développeurs une manière plus efficace, flexible et personnalisable d'interagir avec le réseau Solana, promettant de favoriser le développement et l'application supplémentaires de la plateforme.

Web3 Débutant Série : Maintenant, mettez à niveau @solana/web3.js 2.x pour activer la programmation fonctionnelle

SOL2.83%
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
  • Récompense
  • 8
  • Reposter
  • Partager
Commentaire
0/400
ProbablyNothingvip
· 07-25 21:35
Attendre encore 1.x est vraiment absurde.
Voir l'originalRépondre0
OnChainArchaeologistvip
· 07-24 17:21
Encore en train d'optimiser discrètement les performances.
Voir l'originalRépondre0
0xSherlockvip
· 07-24 09:41
Nouvelle version, migration de bull, c'est encore difficile.
Voir l'originalRépondre0
TokenSleuthvip
· 07-23 08:01
Ah ha, enfin sur 2.0 !
Voir l'originalRépondre0
JustAnotherWalletvip
· 07-23 07:57
Ah, ce n'est pas la chose qui m'a piégé auparavant ?
Voir l'originalRépondre0
GasFeePhobiavip
· 07-23 07:55
J'ai essayé, c'était trop lent !
Voir l'originalRépondre0
ColdWalletGuardianvip
· 07-23 07:38
d'abord acheter puis hausse le gg
Voir l'originalRépondre0
GweiTooHighvip
· 07-23 07:33
J'aime les crêpes.
Voir l'originalRépondre0
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)