Я провів безліч ночей, борючись з Web3.js, тією проклятою колекцією бібліотек JavaScript, яка нібито робить взаємодію з Ethereum "легко." Звісно, це дозволяє вам спілкуватися з вузлами Ethereum через HTTP, IPC або WebSocket, але те, що вони не говорять, це розчарування, яке з цим приходить.
Числа GitHub не брешуть – Web3.js було форкнуто більше ніж 4,500 разів та отримало більше ніж 14,000 зірок станом на початок 2023 року. Але дозвольте мені сказати, що популярність не означає досконалість. Кожен форк, ймовірно, представляє розробника, який думав: "Я можу виправити цей безлад!"
Зародившись у 2015 році під наглядом Фонду Ethereum, Web3.js виріс за межі лише Ethereum до інших сумісних блокчейнів. Чудово в теорії, але спробуйте налагоджувати роботу на різних ланцюгах, і ви відкриєте для себе особливий вид пекла.
Моя перша спроба створити DApp з Web3.js була схожа на спробу зібрати меблі IKEA з інструкціями в ієрогліфах. Документація виглядає так, ніби її написав хтось, хто ніколи насправді не намагався реалізувати це в реальному житті. Проте ми тут, використовуючи це для всього - від DeFi проектів до ігрових додатків.
Що він може зробити? Ну, коли він працює:
Він керує рахунками Ethereum та переводами коштів. Хоча іноді ваші транзакції просто зникають у безодні.
Ви можете підписатися на події блокчейну – коли вони не відключаються випадковим чином.
Він конвертує між одиницями валюти, такими як Wei та Етер, що насправді досить зручно, оскільки жодна людина не може вирахувати 18 десяткових знаків на ходу.
Вплив Web3.js не можна заперечувати – він зробив розробку блокчейну доступною для розробників JavaScript, які в іншому випадку зовсім уникали б цієї сфери. Але ця доступність має свою ціну: спрощення складних концепцій блокчейну, що призводить до вразливостей безпеки, коли розробники не розуміють, що відбувається під капотом.
Дивлячись вперед, Web3.js просувається в IoT та більш складні фінансові послуги. Проте я скептично налаштований – кодова база потребує серйозного рефакторингу, перш ніж взяти на себе ще більше відповідальності.
Незважаючи на всі мої скарги, я все ще користуюсь Web3.js майже щодня. Це як той набридливий друг, який якимось чином завжди запрошує тебе на найкращі вечірки. Звичайно, торгові платформи не згадують про це прямо, але за їхніми стильними інтерфейсами, напевно, є якийсь бідний розробник, який у 3 годині ночі лається на повідомлення про помилки Web3.js.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
Web3.js: JavaScript шлюз до Ethereum, який я люблю ненавидіти
Я провів безліч ночей, борючись з Web3.js, тією проклятою колекцією бібліотек JavaScript, яка нібито робить взаємодію з Ethereum "легко." Звісно, це дозволяє вам спілкуватися з вузлами Ethereum через HTTP, IPC або WebSocket, але те, що вони не говорять, це розчарування, яке з цим приходить.
Числа GitHub не брешуть – Web3.js було форкнуто більше ніж 4,500 разів та отримало більше ніж 14,000 зірок станом на початок 2023 року. Але дозвольте мені сказати, що популярність не означає досконалість. Кожен форк, ймовірно, представляє розробника, який думав: "Я можу виправити цей безлад!"
Зародившись у 2015 році під наглядом Фонду Ethereum, Web3.js виріс за межі лише Ethereum до інших сумісних блокчейнів. Чудово в теорії, але спробуйте налагоджувати роботу на різних ланцюгах, і ви відкриєте для себе особливий вид пекла.
Моя перша спроба створити DApp з Web3.js була схожа на спробу зібрати меблі IKEA з інструкціями в ієрогліфах. Документація виглядає так, ніби її написав хтось, хто ніколи насправді не намагався реалізувати це в реальному житті. Проте ми тут, використовуючи це для всього - від DeFi проектів до ігрових додатків.
Що він може зробити? Ну, коли він працює:
Він керує рахунками Ethereum та переводами коштів. Хоча іноді ваші транзакції просто зникають у безодні.
Ви можете підписатися на події блокчейну – коли вони не відключаються випадковим чином.
Він конвертує між одиницями валюти, такими як Wei та Етер, що насправді досить зручно, оскільки жодна людина не може вирахувати 18 десяткових знаків на ходу.
Вплив Web3.js не можна заперечувати – він зробив розробку блокчейну доступною для розробників JavaScript, які в іншому випадку зовсім уникали б цієї сфери. Але ця доступність має свою ціну: спрощення складних концепцій блокчейну, що призводить до вразливостей безпеки, коли розробники не розуміють, що відбувається під капотом.
Дивлячись вперед, Web3.js просувається в IoT та більш складні фінансові послуги. Проте я скептично налаштований – кодова база потребує серйозного рефакторингу, перш ніж взяти на себе ще більше відповідальності.
Незважаючи на всі мої скарги, я все ще користуюсь Web3.js майже щодня. Це як той набридливий друг, який якимось чином завжди запрошує тебе на найкращі вечірки. Звичайно, торгові платформи не згадують про це прямо, але за їхніми стильними інтерфейсами, напевно, є якийсь бідний розробник, який у 3 годині ночі лається на повідомлення про помилки Web3.js.