Solana Web3.js 2.x version : Une nouvelle ère de la programmation fonctionnelle
La version 2.x de Solana Web3.js sera officiellement publiée en novembre de cette année. Par rapport à la version 1.x, la nouvelle version apporte des changements majeurs. Cet article donnera un aperçu des principaux changements pour préparer les développeurs à une future migration.
Comparaison des versions
La version 1.x, bien que simple à utiliser, présente certains problèmes. Elle centralise toutes les fonctionnalités dans un seul package, ce qui oblige les appareils des utilisateurs à télécharger une grande quantité de code qui pourrait ne pas être nécessaire.
La version 2.x adopte une conception modulaire, 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 adopte une approche basée sur des fonctions uniques, ce qui aide à l'optimisation lors de la construction de code JavaScript. Selon les données officielles, les DApps utilisant la nouvelle version peuvent généralement obtenir une optimisation de taille de 30 %, et pour les applications n'utilisant que quelques fonctionnalités, le taux d'optimisation peut être encore plus élevé.
Cependant, cela impose également des exigences plus élevées en matière de qualité de documentation pour l'équipe Solana. Actuellement, la sémantique des noms de paquets est relativement bonne, ce qui aide à réduire la difficulté de migration pour les développeurs. Cependant, comme la nouvelle version vient d'être publiée, de nombreux projets n'ont pas encore effectué la migration, et il y a relativement peu d'exemples de la version 2.x sur le Solana Cookbook.
Une autre caractéristique importante de la version 2.x est l'absence de dépendances. Cette caractéristique est significative pour améliorer la 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.
Points de changement importants
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 la requête RPC.
paire de clés
Dans la nouvelle version, les classes Keypair et PublicKey ont été remplacées par une série de fonctions. Par exemple, vous devez maintenant utiliser await generateKeyPair() pour générer une paire de clés, au lieu de l'ancienne méthode Keypair.generate(). La nouvelle méthode renvoie une Promise, car elle utilise l'API Web Crypto de JavaScript avec une implémentation native d'Ed25519.
envoyer une transaction
La version 2.x n'utilise plus les classes Transaction et VersionedTransaction. Les méthodes liées au System Program doivent également être importées d'autres endroits. Par exemple, l'instruction transfer nécessite maintenant d'appeler la fonction getTransferSolInstruction dans @solana-program/system.
La nouvelle version offre une forme de pipe couramment utilisée dans la programmation fonctionnelle. Les transactions ne sont plus initiées via Connection, mais sont lancées en générant des fonctions spécifiques à partir du RPC Provider défini. Cela augmente la personnalisation du code, mais augmente légèrement la quantité de code.
React support
Le projet @solana/web3.js inclut également la bibliothèque @solana/react, qui fournit quelques hooks React et intègre 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 Solana 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, ce qui devrait favoriser le développement et l'adoption supplémentaires de la plateforme.
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.
11 J'aime
Récompense
11
6
Partager
Commentaire
0/400
JustHodlIt
· Il y a 13h
2.x est stable, allons-y !
Voir l'originalRépondre0
CryptoMom
· 07-20 08:14
Enfin mis à jour, jetons un œil au 2.x.
Voir l'originalRépondre0
ETHReserveBank
· 07-19 17:40
On ouvre le champagne, j'attends la mise à niveau devant.
Voir l'originalRépondre0
LuckyHashValue
· 07-19 17:40
Sola a encore fait quelque chose de nouveau.
Voir l'originalRépondre0
LiquidityNinja
· 07-19 17:37
Solana est toujours un bull
Voir l'originalRépondre0
EyeOfTheTokenStorm
· 07-19 17:13
Les données montrent-elles un nouveau prélude au bull ? Entrer dans une position ?
Lancement de Solana Web3.js 2.x : une nouvelle ère de conception modulaire et de programmation fonctionnelle sans dépendances.
Solana Web3.js 2.x version : Une nouvelle ère de la programmation fonctionnelle
La version 2.x de Solana Web3.js sera officiellement publiée en novembre de cette année. Par rapport à la version 1.x, la nouvelle version apporte des changements majeurs. Cet article donnera un aperçu des principaux changements pour préparer les développeurs à une future migration.
Comparaison des versions
La version 1.x, bien que simple à utiliser, présente certains problèmes. Elle centralise toutes les fonctionnalités dans un seul package, ce qui oblige les appareils des utilisateurs à télécharger une grande quantité de code qui pourrait ne pas être nécessaire.
La version 2.x adopte une conception modulaire, 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 adopte une approche basée sur des fonctions uniques, ce qui aide à l'optimisation lors de la construction de code JavaScript. Selon les données officielles, les DApps utilisant la nouvelle version peuvent généralement obtenir une optimisation de taille de 30 %, et pour les applications n'utilisant que quelques fonctionnalités, le taux d'optimisation peut être encore plus élevé.
Cependant, cela impose également des exigences plus élevées en matière de qualité de documentation pour l'équipe Solana. Actuellement, la sémantique des noms de paquets est relativement bonne, ce qui aide à réduire la difficulté de migration pour les développeurs. Cependant, comme la nouvelle version vient d'être publiée, de nombreux projets n'ont pas encore effectué la migration, et il y a relativement peu d'exemples de la version 2.x sur le Solana Cookbook.
Une autre caractéristique importante de la version 2.x est l'absence de dépendances. Cette caractéristique est significative pour améliorer la 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.
Points de changement importants
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 la requête RPC.
paire de clés
Dans la nouvelle version, les classes Keypair et PublicKey ont été remplacées par une série de fonctions. Par exemple, vous devez maintenant utiliser await generateKeyPair() pour générer une paire de clés, au lieu de l'ancienne méthode Keypair.generate(). La nouvelle méthode renvoie une Promise, car elle utilise l'API Web Crypto de JavaScript avec une implémentation native d'Ed25519.
envoyer une transaction
La version 2.x n'utilise plus les classes Transaction et VersionedTransaction. Les méthodes liées au System Program doivent également être importées d'autres endroits. Par exemple, l'instruction transfer nécessite maintenant d'appeler la fonction getTransferSolInstruction dans @solana-program/system.
La nouvelle version offre une forme de pipe couramment utilisée dans la programmation fonctionnelle. Les transactions ne sont plus initiées via Connection, mais sont lancées en générant des fonctions spécifiques à partir du RPC Provider défini. Cela augmente la personnalisation du code, mais augmente légèrement la quantité de code.
React support
Le projet @solana/web3.js inclut également la bibliothèque @solana/react, qui fournit quelques hooks React et intègre 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 Solana 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, ce qui devrait favoriser le développement et l'adoption supplémentaires de la plateforme.