Етеріум для розробників JavaScript
JavaScript є однією з найпопулярніших мов в екосистемі Етеріуму. Насправді існує команда (opens in a new tab), яка прагне перенести якомога більше можливостей Етеріуму в JavaScript.
Є можливості писати на JavaScript (або чомусь схожому) на всіх рівнях стека.
Взаємодія з Етеріумом
Бібліотеки JavaScript API
Якщо ви хочете писати на JavaScript для запитів до блокчейну, надсилання транзакцій тощо, найзручніший спосіб зробити це — використати бібліотеку JavaScript API. Ці API дозволяють розробникам легко взаємодіяти з вузлами в мережі Етеріум.
Ви можете використовувати ці бібліотеки для взаємодії зі смарт-контрактами в Етеріумі, тому можна створити децентралізований застосунок (dapp), де ви просто використовуєте JavaScript для взаємодії з уже існуючими контрактами.
Ознайомтеся
- Web3.js (opens in a new tab)
- Ethers.js (opens in a new tab) — включає реалізацію гаманця Етеріуму та утиліти на JavaScript і TypeScript.
- viem (opens in a new tab) — інтерфейс TypeScript для Етеріуму, який надає низькорівневі примітиви без збереження стану для взаємодії з Етеріумом.
- Drift (opens in a new tab) — мета-бібліотека TypeScript із вбудованим кешуванням, хуками та тестовими моками для легкої розробки в Етеріумі за допомогою бібліотек Web3.
Смарт-контракти
Якщо ви розробник JavaScript і хочете написати власний смарт-контракт, вам варто ознайомитися з Solidity (opens in a new tab). Це найпопулярніша мова для смарт-контрактів, і вона синтаксично схожа на JavaScript, що може полегшити її вивчення.
Детальніше про смарт-контракти.
Розуміння протоколу
Віртуальна машина Етеріуму
Існує реалізація віртуальної машини Етеріуму на JavaScript. Вона підтримує останні правила форків. Правила форків стосуються змін, внесених до EVM у результаті запланованих оновлень.
Вона розділена на різні пакети JavaScript, з якими ви можете ознайомитися для кращого розуміння:
- Акаунти
- Блоки
- Сам блокчейн
- Транзакції
- Та багато іншого...
Це допоможе вам зрозуміти такі речі, як «яка структура даних акаунта?».
Якщо ви віддаєте перевагу читанню коду, цей JavaScript може стати чудовою альтернативою читанню нашої документації.
Ознайомтеся з EVM
@ethereumjs/evm (opens in a new tab)
Вузли та клієнти
Клієнт EthereumJS перебуває в активній розробці, що дозволяє вам заглибитися в те, як працюють клієнти Етеріуму, зрозумілою вам мовою — JavaScript!
Ознайомтеся з клієнтом
@ethereumjs/client (opens in a new tab)
Інші проєкти
У світі JavaScript для Етеріуму також відбувається багато іншого, зокрема:
- бібліотеки утиліт для гаманців.
- інструменти для генерації, імпорту та експорту ключів Етеріуму.
- реалізація
merkle-patricia-tree— структури даних, описаної в Жовтій книзі Етеріуму.
Заглиблюйтеся в те, що вас найбільше цікавить, у репозиторії EthereumJS (opens in a new tab)
Подальше читання
Знаєте ресурс спільноти, який вам допоміг? Відредагуйте цю сторінку та додайте його!