Web3.js:通往以太坊的JavaScript网关,我爱恨交织

robot
摘要生成中

我花了无数个夜晚与 Web3.js 纠缠,那该死的 JavaScript 库集合据说使与以太坊的交互变得 "轻松。" 当然,它允许你通过 HTTP、IPC 或 WebSocket 与以太坊节点进行通信,但他们没有告诉你随之而来的挫折。

GitHub 数据不会说谎 – Web3.js 已被分叉超过 4,500 次,并在 2023 年初获得了超过 14,000 次的星标。但让我告诉你,受欢迎并不等于完美。每一个分叉可能代表一个开发者在想,"我可以修复这个烂摊子!"

2015年在以太坊基金会的监督下诞生的Web3.js,不仅仅局限于以太坊,还扩展到了其他兼容的区块链。理论上伟大,但尝试在不同的链上调试,你会发现一种特殊的地狱。

我第一次尝试用 Web3.js 构建 DApp 就像是试图用象形文字组装宜家家具。文档读起来就像是由一个从未真正需要在现实生活中实施它的人写的。然而,我们现在正在将其用于从 DeFi 项目到游戏应用程序的所有事情。

它能做什么?好吧,当它工作时:

它管理以太坊账户并转账。虽然有时你的交易就消失在虚空中。

您可以订阅区块链事件 – 当它们不随机断开时。

它可以在货币单位之间转换,例如Wei和Ether,这实际上是相当方便的,因为没有人能即时计算18位小数。

Web3.js的影响不容忽视——它使区块链开发对JavaScript开发者变得可接近,否则他们可能会完全避免这个领域。但这种可接近性是有代价的:复杂的区块链概念被过于简单化,导致开发者在不了解底层情况的情况下出现安全漏洞。

展望未来,Web3.js 正在向物联网和更复杂的金融服务推进。不过我对此持怀疑态度——在承担更多责任之前,代码库需要进行严重的重构。

尽管我有很多抱怨,我几乎每天仍然使用 Web3.js。这就像那个恼人的朋友,总是能让你参加最好的派对。当然,交易平台并没有明确提到它,但在他们光鲜的界面背后,可能有某个可怜的开发者在凌晨三点对着 Web3.js 的错误信息咒骂。

ETH1.71%
查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 评论
  • 转发
  • 分享
评论
0/400
暂无评论
交易,随时随地
qrCode
扫码下载 Gate App
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)