Эфириум для разработчиков 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)
Дополнительная литература
Знаете ресурс сообщества, который вам помог? Отредактируйте эту страницу и добавьте его!