Lanzamiento de Solana Web3.js 2.x: una nueva era de diseño modular y programación funcional sin dependencias

Solana Web3.js 2.x versión: La nueva era de la programación funcional

La versión 2.x de Solana Web3.js se lanzará oficialmente en noviembre de este año. En comparación con la versión 1.x, la nueva versión trae cambios significativos. Este artículo resumirá los principales cambios para preparar a los desarrolladores para la migración futura.

Serie para principiantes de Web3: Actualiza ahora @solana/web3.js 2.x para habilitar la programación funcional

Comparación de versiones

La versión 1.x, aunque es fácil de usar, presenta algunos problemas. Agrupa todas las funciones en un solo paquete, lo que lleva a que los dispositivos de los usuarios tengan que descargar una gran cantidad de código que puede que no necesiten.

La versión 2.x utiliza un diseño modular, dividiendo la biblioteca de código en múltiples módulos pequeños, como @solana/accounts, @solana/codecs, etc. La nueva versión ha abandonado la implementación basada en clases y ha adoptado un enfoque basado en funciones individuales, lo que ayuda a la optimización durante la construcción del código JavaScript. Según datos oficiales, las DApps que utilizan la nueva versión suelen lograr una optimización del tamaño del 30%, y para aplicaciones que solo utilizan unas pocas funciones, la proporción de optimización puede ser aún mayor.

Sin embargo, esto también plantea mayores exigencias a la calidad de la documentación del equipo de Solana. Actualmente, la semántica de los nombres de los paquetes es bastante buena, lo que ayuda a reducir la dificultad de migración para los desarrolladores. Pero dado que la nueva versión se lanzó hace poco, muchos proyectos aún no han realizado la migración, y hay relativamente pocos ejemplos de la versión 2.x en el Solana Cookbook.

Otra característica importante de la versión 2.x es la ausencia de dependencias. Esta característica tiene un gran significado en términos de aumentar la seguridad, especialmente considerando los recientes ataques a la cadena de suministro ocurridos en las versiones 1.95.5 y 1.95.6.

Puntos de cambio importantes

conexión

La versión 2.x utiliza un enfoque más funcional para manejar las conexiones. Ya no se utiliza la clase Connection, sino que se crea un emisor de solicitudes configurando la dirección RPC.

par de claves

En la nueva versión, las clases Keypair y PublicKey han sido reemplazadas por una serie de funciones. Por ejemplo, ahora se utiliza await generateKeyPair() para generar pares de claves, en lugar del anterior Keypair.generate(). El nuevo método devuelve una Promesa, lo cual se debe a la utilización de la API Web Crypto de JavaScript, utilizando la implementación nativa de Ed25519.

enviar transacción

La versión 2.x ya no utiliza las clases Transaction y VersionedTransaction. Los métodos relacionados con el System Program también necesitan ser importados de otros lugares. Por ejemplo, la instrucción transfer ahora requiere llamar a la función getTransferSolInstruction en @solana-program/system.

La nueva versión ofrece una forma de pipe comúnmente utilizada en programación funcional. Las transacciones ya no se inician a través de Connection, sino que se generan funciones específicas mediante un RPC Provider definido para iniciar transacciones. Esto aumenta la personalización del código, pero también incrementa ligeramente la cantidad de código.

Soporte React

El proyecto @solana/web3.js también incluye la biblioteca @solana/react, que proporciona algunos Hooks de React e integra funciones como signIn.

Resumen

La publicación de la versión 2.x de @solana/web3.js muestra el compromiso del equipo de Solana con la mejora continua. La nueva versión ofrece a los desarrolladores una forma más eficiente, flexible y personalizable de interactuar con la red de Solana, lo que se espera impulse el desarrollo y la adopción adicional de la plataforma.

Serie para principiantes en Web3: Actualiza ahora @solana/web3.js 2.x para comenzar la programación funcional

SOL4.35%
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • 6
  • Compartir
Comentar
0/400
JustHodlItvip
· 07-21 20:58
2.x estabilizado ¡A por todas!
Ver originalesResponder0
CryptoMomvip
· 07-20 08:14
Finalmente se actualizó, echemos un vistazo a la versión 2.x.
Ver originalesResponder0
ETHReserveBankvip
· 07-19 17:40
¡Abriendo champán! Esperando la actualización en la fila delantera.
Ver originalesResponder0
LuckyHashValuevip
· 07-19 17:40
sola ha vuelto a la vida
Ver originalesResponder0
LiquidityNinjavip
· 07-19 17:37
¿Solana sigue siendo alcista?
Ver originalesResponder0
EyeOfTheTokenStormvip
· 07-19 17:13
¿Los datos muestran otro preludio alcista? ¿Introducir una posición o no?
Ver originalesResponder0
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)