Литмир - Электронная Библиотека
Содержание  
A
A
Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_021.jpg

Рис. 1.4.2

Панель терминала откроется в нижней части окна VS Code. Для работы с новым проектом откройте раздел EXPLORER, нажав самую верхнюю кнопку на панели слева (рис. 1.4.2). В итоге окно VS Code будет выглядеть как на рис. 1.4.3.

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_022.jpg

Рис. 1.4.3

Разверните терминал на всю панель, нажав кнопку «^» в верхнем правом углу панели терминала (рис. 1.4.3). Окно VS Code примет вид как на рис. 1.4.4.

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_023.jpg

Рис. 1.4.4

Проверим подключение компилятора к терминалу VS Code. Для этого в терминале наберите команду «npm» и нажмите клавишу Enter (рис. 1.4.5).

Если компилятор работает, то мы увидим справку о команде «npm», как на рис. 1.4.5.

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_024.jpg

Рис. 1.4.5

Теперь установим фреймворк Truffle. Truffle – это набор инструментов и библиотек для создания смарт-контрактов на языке программирования Solidity.

Замечание. Конечно, можно обойтись и без Truffle и все делать вручную. Это сложно и занимает много времени. Поэтому давайте автоматизируем создание смарт-контрактов с использованием инструментов фреймворка Truffle.

Для установки фреймворка в терминале наберите команду «npm install –g truffle» и нажмите клавишу Enter (рис. 1.4.6).

Если все работает, терминал будет выглядеть как на рис. 1.4.6.

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_025.jpg

Рис. 1.4.6

Теперь для проверки работы компилятора Node.js при помощи фреймворка Truffle мы развернем тестовый проект Solidity и откомпилируем его.

Для начала создадим папку проекта. Для этого в разделе EXPLORER в левой части окна VS Code нажмите синюю кнопку Open Folder (рис. 1.4.6). В окне Open Folder нажмите кнопку «Новая папка». Создайте папку MetaCoin, выделите ее и нажмите кнопку «Выбор папки» (рис. 1.4.7).

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_026.jpg

Рис. 1.4.7

Для проверки работы нашего окружения – «песочницы» – создадим тестовый проект при помощи Truffle. Для этого в окне терминала наберите команду «truffle unbox metacoin», как на рис. 1.4.8, и нажмите кнопку Enter. После развертывания тестового контракта MetaCoin окно VS Code будет выглядеть как на рис. 1.4.8.

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_027.jpg

Рис. 4.8

Обратите внимание на изменения в разделе EXPLORER слева (рис. 1.4.8). Здесь появился проект MetaCoin, содержащий папки contracts, migrations и test. В папке contracts расположены наши смарт-контракты. Это файлы с расширением sol. В папке migrations располагаются настройки компиляции смарт-контрактов. Это файлы с расширением js. В папке test расположены файлы для отладки смарт-контрактов. Это файлы с расширением js и sol. Также обратите внимание на файл truffle-config.js, в нем мы прописываем настройки блокчейн-сети, где будем публиковать и запускать наши смарт-контракты, и при помощи данного файла мы будем подключать наш проект к эмулятору.

В заключение для проверки работы компилятора Node.js произведем компиляцию проекта MetaCoin. Для начала компиляции проекта в окне терминала наберите команду «truffle compile» и нажмите кнопку Enter. Окно VS Code примет вид как на рис. 1.4.9.

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_028.jpg

Рис. 1.4.9

Обратите внимание на то, что в проекте MetaCoin в разделе EXPLORER появилась папка build. В данной папке мы можем увидеть файлы из папки contracts, откомпилированные в формат json. Позднее мы рассмотрим, как опубликовать эти файлы в эмуляторе сети блокчейн. Успешная компиляция тестовых смарт-контрактов в формат json подтверждает функционирование компилятора Node.js.

Теперь перейдем к установке эмулятора сети блокчейн Ganache.

Урок 5. Установка эмулятора Ganache

Аннотация. В уроке рассматривается установка эмулятора блокчейн сети Ganache [4].

Рассмотрим установку эмулятора блокчейн-сети Ethereum – Ganache. Мы будем использовать его для тестирования наших смарт-контрактов. Для начала скачаем установочный пакет эмулятора. Это можно сделать с официального сайта, расположенного по адресу http://trufflesuite.com/ganache (рис. 1.5.1).

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_029.jpg

Рис. 1.5.1

Для начала скачивания версии Ganache для Windows необходимо нажать на ссылку DOWNLOAD (WINDOWS) (рис. 1.5.1). Появится окно загрузки установочного пакета (рис. 1.5.2).

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_030.jpg

Рис. 1.5.2

Нажмите кнопку «Сохранить» (рис. 1.5.2). По окончании скачивания запустите установленный файл. Появится окно начала установки, где необходимо нажать кнопку «Установить» (рис. 1.5.3).

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_031.jpg

Рис. 1.5.3

После окончании установки эмулятора появится окно с вопросом о сборе статистики. В данном окне нажмите кнопку CONTINUE (рис. 1.5.4).

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_032.jpg

Рис. 1.5.4

Теперь произведем настройку рабочего окружения. Для начала активируем опцию QUICKSTART. Это автоматическая настройка окружения. Если выбрать опцию NEW WORKSPACE, то появятся расширенные настройки окружения. Если вы продвинутый пользователь, то можно их настроить. Всем остальным я советую предпочесть опцию QUICKSTART (рис. 1.5.5).

Замечание. Мы для простоты остановили свой выбор на опции QUICKSTART. Однако в данном случае все настройки эмулятора будут сброшены при последующем запуске эмулятора. Для текущих задач этого достаточно. Позже мы посмотрим, как создать постоянное окружение.

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_033.jpg

Рис. 1.5.5

Появится рабочее окно Ganache. Рассмотрим его более подробно. Первое, что мы здесь видим, – это вкладка ACCOUNTS. В центре окна расположено десять криптокошельков с виртуальными 100 ETH на счету (рис. 1.5.7). Их можно добавлять и удалять. Обратите внимание, что в столбце ADDRESS отображается адрес кошелька, а знак ключа предоставляет доступ к адресу и закрытым ключам кошелька – эта информация понадобится нам позже (рис. 1.5.6).

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_034.jpg

Рис. 1.5.6

В верхней части окна расположены кнопки для открытия других вкладок и текущая информация по состоянию нашей «виртуальной» сети, «Цена газа», «Остаток газа», «Состояние майнинга» и т. д. (рис. 1.5.7).

Ethereum: работа с сетью, смарт-контракты и распределенные приложения - i_035.jpg

Рис. 1.5.7

Рассмотрим другие вкладки. Вкладка BLOCKS отображает состояние майнинга (рис. 1.5.8), т. е. сколько блоков было создано вашим компьютером, пока был запущен эмулятор. Блоки будут создаваться в результате каких-либо действий в эмуляторе.

3
{"b":"696778","o":1}