Я провел бесчисленные ночи, борясь с Web3.js, этой проклятой коллекцией библиотек JavaScript, якобы упрощающей взаимодействие с Ethereum. Конечно, она позволяет вам общаться с узлами Ethereum через HTTP, IPC или WebSocket, но они не говорят вам о разочаровании, которое с этим связано.
Числа GitHub не лгут – Web3.js был форкнут более 4500 раз и отмечен более чем 14000 звездами на начало 2023 года. Но позвольте мне сказать вам, что популярность не равна совершенству. Каждый форк, вероятно, представляет разработчика, который подумал: "Я могу исправить этот беспорядок!"
Рожденный в 2015 году под наблюдением Фонда Ethereum, Web3.js вырос за пределы только Ethereum к другим совместимым блокчейнам. Отлично в теории, но попробуйте отладить на разных цепях, и вы обнаружите особый вид ада.
Моя первая попытка построить DApp с использованием Web3.js была похожа на сборку мебели IKEA с инструкциями на иероглифах. Документация читается так, будто ее писал кто-то, кто никогда не внедрял это в реальной жизни. Тем не менее, вот мы здесь, используем это для всего, от проектов DeFi до игровых приложений.
Что он может сделать? Ну, когда он работает:
Он управляет аккаунтами Ethereum и переводит средства. Хотя иногда ваши транзакции просто исчезают в пустоте.
Вы можете подписаться на события блокчейна – когда они не отключаются случайным образом.
Он конвертирует между валютными единицами, такими как Wei и Эфир, что на самом деле довольно удобно, поскольку никто не может быстро вычислить 18 знаков после запятой.
Влияние Web3.js нельзя отрицать – он сделал разработку блокчейна доступной для разработчиков на JavaScript, которые в противном случае полностью избегали бы этой области. Но эта доступность имеет свою цену: упрощение сложных концепций блокчейна приводит к уязвимостям в безопасности, когда разработчики не понимают, что происходит «под капотом».
Смотря в будущее, Web3.js движется в сторону IoT и более сложных финансовых услуг. Я скептически настроен, однако – кодовая база нуждается в серьезной переработке, прежде чем взять на себя еще большую ответственность.
Несмотря на все мои жалобы, я все равно почти ежедневно использую Web3.js. Это как тот надоедливый друг, который каким-то образом всегда приводит тебя на лучшие вечеринки. Конечно, торговые платформы не упоминают это явно, но за их гладкими интерфейсами, вероятно, есть какой-то бедный разработчик, ругающийся на сообщения об ошибках Web3.js в 3 часа ночи.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
Web3.js: JavaScript-шлюз к Ethereum, который я люблю ненавидеть
Я провел бесчисленные ночи, борясь с Web3.js, этой проклятой коллекцией библиотек JavaScript, якобы упрощающей взаимодействие с Ethereum. Конечно, она позволяет вам общаться с узлами Ethereum через HTTP, IPC или WebSocket, но они не говорят вам о разочаровании, которое с этим связано.
Числа GitHub не лгут – Web3.js был форкнут более 4500 раз и отмечен более чем 14000 звездами на начало 2023 года. Но позвольте мне сказать вам, что популярность не равна совершенству. Каждый форк, вероятно, представляет разработчика, который подумал: "Я могу исправить этот беспорядок!"
Рожденный в 2015 году под наблюдением Фонда Ethereum, Web3.js вырос за пределы только Ethereum к другим совместимым блокчейнам. Отлично в теории, но попробуйте отладить на разных цепях, и вы обнаружите особый вид ада.
Моя первая попытка построить DApp с использованием Web3.js была похожа на сборку мебели IKEA с инструкциями на иероглифах. Документация читается так, будто ее писал кто-то, кто никогда не внедрял это в реальной жизни. Тем не менее, вот мы здесь, используем это для всего, от проектов DeFi до игровых приложений.
Что он может сделать? Ну, когда он работает:
Он управляет аккаунтами Ethereum и переводит средства. Хотя иногда ваши транзакции просто исчезают в пустоте.
Вы можете подписаться на события блокчейна – когда они не отключаются случайным образом.
Он конвертирует между валютными единицами, такими как Wei и Эфир, что на самом деле довольно удобно, поскольку никто не может быстро вычислить 18 знаков после запятой.
Влияние Web3.js нельзя отрицать – он сделал разработку блокчейна доступной для разработчиков на JavaScript, которые в противном случае полностью избегали бы этой области. Но эта доступность имеет свою цену: упрощение сложных концепций блокчейна приводит к уязвимостям в безопасности, когда разработчики не понимают, что происходит «под капотом».
Смотря в будущее, Web3.js движется в сторону IoT и более сложных финансовых услуг. Я скептически настроен, однако – кодовая база нуждается в серьезной переработке, прежде чем взять на себя еще большую ответственность.
Несмотря на все мои жалобы, я все равно почти ежедневно использую Web3.js. Это как тот надоедливый друг, который каким-то образом всегда приводит тебя на лучшие вечеринки. Конечно, торговые платформы не упоминают это явно, но за их гладкими интерфейсами, вероятно, есть какой-то бедный разработчик, ругающийся на сообщения об ошибках Web3.js в 3 часа ночи.