Перейти до основного контенту
Change page

Вступ до стеку Ethereum

Останні оновлення сторінки: 21 жовтня 2025 р.

Як і стек будь якого програмного забезпечення, кінцевий стек Ethereum буде варіюватися від проекту до проекту в залежності від ваших бізнес-цілей.

Однак є основні технології Ethereum які допомагають зрозуміти, як взаємодіють додатки з блокчейном Ethereum. Розуміння прошарків стеку допоможе вам краще зрозуміти різні шляхи інтеграції Ethereum з програмними проектами.

Рівень 1: Віртуальна машина Ethereum

Віртуальна машина Ethereum (EVM) — це середовище виконання для смарт-контрактів на Ethereum. Усі смарт-контракти та зміни стану в блокчейні Ethereum виконуються за допомогою транзакцій. EVM обробляє всі транзакції мережі Ethereum.

Як і в будь-якій віртуальній машині, EVM абстрагується від конкретного виконуваного коду і конкретного пристрою, на якому це відбувається (вузла Ethereum). Наразі, EVM працює на тисячах вузлів, розподілених по всьому світу.

Під капотом EVM використовує набір opcode інструкцій для виконання конкретних завдань. Ці (140 унікальних) кодів операцій дають змогу EVM бути повною за Тюрінгом (opens in a new tab), що означає, що EVM може обчислити майже будь-що за наявності достатніх ресурсів.

Як dapp розробнику, вам не потрібно знати багато про EVM, окрім того, що вона існує та надійно забезпечує життєдіяльність усіх додатків на Ethereum без затримки.

Рівень 2: Смарт-контракти

Смарт-контракти — це виконувані програми, які працюють у блокчейні Ethereum.

Смарт-контракти пишуться з використанням спеціальних мов програмування, які компілюються в байт-код EVM (низькорівневі машинні інструкції, що називаються кодами операцій).

Смарт контракти не тільки виконують функції бібліотек з відкритим кодом, це, по суті, відкриті служби API, які працюють 24/7 та не можуть бути зупинені. Смарт-контракти надають публічні функції, з якими користувачі та застосунки (dapps) можуть взаємодіяти без необхідності отримання дозволу. Будь-який застосунок може інтегруватися з розгорнутими смарт-контрактами для створення функціоналу, наприклад для додавання каналів даних або для підтримки обміну токенів. Крім того, будь-хто може розгортати нові смарт контракти в Ethereum, щоб додати власну функціональність для задоволення потреб свого додатка.

Як розробнику dapp, вам необхідно буде писати смарт контракти, лише якщо ви захочете додати власну функціональність до блокчейну Ethereum. Може виявитись, що ви можете задовольнити більшість або усі потреби свого проекту, просто інтегрувавши існуючі смарт контракти, наприклад, якщо ви хочете підтримувати платежі в стейблкойнах або децентралізований своп токенів.

Рівень 3: Вузли Ethereum

Щоб застосунок міг взаємодіяти з блокчейном Ethereum, він має підключитися до вузла Ethereum. Підключення до вузла дозволяє вам зчитувати дані блокчейну та/або відправляти транзакції до мережі блокчейну.

Вузли Ethereum це комп'ютери, на яких запущена програма - клієнт Ethereum. Клієнт - це реалізація Ethereum, яка перевіряє всі транзакції в кожному блоці, зберігаючи мережу захищеною, а дані - точними. Вузли Ethereum і є блокчейном Ethereum. Вони колективно зберігають стан блокчейну Ethereum і досягають консенсусу щодо транзакцій для зміни стану блокчейну.

Підключивши свій застосунок до вузла Ethereum (через API JSON-RPC), ваш застосунок зможе читати дані з блокчейну (наприклад, баланси облікових записів користувачів), а також транслювати нові транзакції в мережу (наприклад, переказувати ETH між обліковими записами користувачів або виконувати функції смарт-контрактів).

Рівень 4: Клієнтські API Ethereum

Існує багато зручних бібліотек (створених та підтримуваних спільнотою відкритого коду Ethereum), які дозволяють вашим додаткам підключатися до блокчейну Ethereum та взаємодіяти з ним.

Якщо ваш клієнтський застосунок є вебзастосунком, ви можете встановити (npm install) JavaScript API безпосередньо у вашому фронтенді. Або, можливо, ви вирішите реалізувати цей функціонал на стороні сервера, використовуючи API для Python або Java.

Хоча ці API не є необхідною частиною стеку, вони абстрагують більшу частину складності, що виникає при безпосередній взаємодії з вузлом Ethereum. Вони також надають допоміжні функції (наприклад, конвертацію ETH в Gwei), тому ви як розробник можете витрачати менше часу на тонкощі клієнтів Ethereum і більше часу приділяти функціоналу, специфічному для вашого застосунку.

Рівень 5: Застосунки для кінцевих користувачів

На верхньому рівні стека знаходяться додатки, що взаємодіють з користувачами. Це стандартні додатки, якими ви регулярно користуєтесь і розробляєте сьогодні: у більшості, веб-додатки та мобільні додатки.

Спосіб розробки ваших інтерфейсів, по суті, залишається незмінним. Часто користувачам не потрібно знати про те, що додаток, який вони використовують, побудований з використанням блокчейну.

Готові вибрати свій стек?

Перегляньте наш посібник із налаштування локального середовища розробки для вашого застосунку Ethereum.

Для подальшого читання

Знайшли ресурс, який допоміг з цією темою? Відредагуйте цю сторінку і додайте його!

Чи була ця стаття корисною?