Ethers.js : Ma relation amour-haine avec cette bibliothèque JavaScript

Cela fait des mois que je me bats avec Ethers.js, et laissez-moi vous dire - c'est une bête puissante qui semble parfois vouloir me rendre la vie difficile. Cette bibliothèque JavaScript pour interagir avec le blockchain Ethereum est supposément "complète" et "modulaire", mais essayez de m'expliquer cela à 3h du matin alors que mes transactions échouent sans cesse.

La bibliothèque vous permet de vous connecter à Ethereum, de signer des transactions et de jouer avec des contrats intelligents. Super en théorie. En pratique ? Eh bien, parfois je me demande si je ne ferais pas mieux d'écrire ma propre implémentation depuis zéro !

Ce qui me dérange vraiment, c'est de voir tout le monde louer sa nature "légère". Certes, comparé à certaines alternatives encombrantes peut-être, mais avez-vous essayé de l'utiliser dans une DApp du monde réel ? La documentation prétend qu'elle est parfaite pour les développeurs web, mais parfois j'ai l'impression d'avoir besoin d'un doctorat en cryptographie juste pour établir une simple connexion de portefeuille.

Ne vous méprenez pas - quand ça fonctionne, ça FONCTIONNE. Je l'ai utilisé pour créer des interfaces pour la gestion de tokens et j'ai même implémenté quelques fonctions de trading. La création de portefeuille est en fait assez élégante, et la façon dont elle gère la signature des transactions est sécurisée ( quand elle décide de coopérer ).

Le marché continue de promouvoir cette bibliothèque comme si c'était le saint Graal du développement Ethereum. Tout le monde dit "l'adoption d'Ethereum est en croissance !" et "DeFi est l'avenir !" - pendant ce temps, j'essaie juste de faire en sorte que mon appel de contrat intelligent cesse de revenir sans aucun message d'erreur utile.

Ces gros acteurs continuent de construire leurs protocoles DeFi sophistiqués sur des outils comme Ethers.js, et les investisseurs de détail investissent de l'argent sans comprendre la structure technique sur laquelle tout est construit. J'ai vu certaines implémentations douteuses qui parviennent à gérer des millions en TVL.

Ce qui est le plus frustrant, c'est de voir des développeurs juniors louer Ethers.js comme si c'était parfait alors qu'ils n'ont à peine effleuré le sujet. Attendez juste qu'ils aient besoin de gérer l'estimation des frais de gaz lors de la congestion du réseau ou de traiter l'encodage ABI personnalisé pour une interaction complexe avec un contrat.

J'ai utilisé Ethers.js pour tout, des transferts de tokens simples aux protocoles complexes, et chaque fois, je découvre de nouvelles particularités et limitations. Le soutien de la communauté est correct, je dois l'admettre, mais parfois, les réponses semblent avoir été écrites par les mêmes personnes qui ont créé ces messages d'erreur inutilement cryptiques.

Pour toutes mes plaintes cependant, je l'atteins toujours chaque fois que je commence un nouveau projet Ethereum. Peut-être que je suis un glouton pour la punition, ou peut-être que c'est vraiment le meilleur outil que nous avons en ce moment. L'espace blockchain évolue si rapidement qu'au moment où vous maîtrisez une bibliothèque, trois nouvelles alternatives "supérieures" ont émergé.

ETH1.62%
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
  • Commentaire
  • Reposter
  • Partager
Commentaire
0/400
Aucun commentaire
  • Épingler
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)