Ethereum: работа с сетью, смарт-контракты и распределенные приложения
Реклама. ООО «ЛитРес», ИНН: 7719571260.
Оглавление
Алексей Бурков. Ethereum: работа с сетью, смарт-контракты и распределенные приложения
Введение
Неделя № 1. Развертывание рабочего окружения («песочницы») для создания и тестирования смарт-контрактов на языке программирования Solidity
Введение
Урок 1. Установка Visual Studio Code
Урок 2. Установка расширения Visual Studio Code для работы с Solidity
Урок 3. Установка компилятора Node.js
Урок 4. Тестирование Node.js и подключение фреймворка Truffle
Урок 5. Установка эмулятора Ganache
Урок 6. Подключение тестового проекта в VS Code к эмулятору Ganache и проверка работы эмулятора
Урок 7. Установка плагина MetaMask для работы с криптокошельками
Урок 8. Установка офлайн-криптокошелька MyEtherWallet
Заключение
Неделя № 2. Создание и тестирование простейших смарт-контрактов
Введение
Урок 1. Структура проекта Solidity в VS Code
Урок 2. Создание нового проекта Solidity
Урок 3. Создаем наш первый смарт-контракт Hello World
Урок 4. Публикация смарт-контракта HelloWorld в эмуляторе блокчейн-сети Ganache
Урок 5. Запуск нового смарт-контракта
Урок 6. Смарт-контракт Factorial
Урок 7. Смарт-контракт Calculator
Заключение
Неделя № 3. Хранение и обработка данных в распределенных реестрах
Введение
Урок 1. Простейший смарт-контракт для хранения данных Note
Урок 2. Смарт-контракт NewNote
Урок 3. Смарт-контракт с ограниченным доступом Owner
Урок 4. Смарт-контракт Grades
Урок 5. Смарт-контракт по обработке массивов Address
Урок 6. Смарт-контракт Voter
Заключение
Неделя № 4. Реализация игровых смарт-контрактов
Введение
Урок 1. Смарт-контракт LuckySeven
Урок 2. Смарт-контракт лотереи RLottery
Урок 3. Смарт-контракт игры Dice (Кости)
Урок 4. Смарт-контракт Dice 2
Урок 5. Смарт-контракт DragonFarm
Урок 6. Продолжение смарт-контракта Криптодраконы
Заключение
Неделя № 5. Финансовые смарт-контракты
Введение
Урок 1. Смарт-контракт Transaction
Урок 2. Смарт-контракт Split
Урок 3. Смарт-контракт Donation
Урок 4. Смарт-контракт BankDeposit
Урок 5. Смарт-контракт Insurance
Урок 6. Смарт-контракт MyCoin
Заключение
Неделя № 6. Интерфейс, тестирование и публикация смарт-контрактов
Введение
Урок 1. Тестирование смарт-контрактов
Урок 2. Простейшее децентрализованное приложение «Greetings»
Урок 3. Dapp для голосования VotingDapp и управление эмулятором Ganache через терминал
Урок 4. Тестирование контракта в публичной блокчейн-сети
Урок 5. Создание собственной блокчейн-сети на Ethereum
Урок 6. Публичные блокчейн-сети
Источники
Приложения
Приложение 1 (BankDeposit.sol)
Приложение 2 (Insurance.sol)
Приложение 3 (MyCoin.sol)
Приложение 4 (Greetings.html)
Приложение 5 (Voting.html)
Приложение 6 (Voting.js)
Отрывок из книги
Эта неделя будет посвящена установке и настройке окружения для создания и тестирования смарт-контрактов для блокчейна Ethereum. В качестве языка программирования будем использовать язык программирования смарт-контрактов Solidity, а в качестве среды разработки – Visual Studio Code (VS Code). Для создания проектов будем использовать фреймворк Truffle, для запуска и тестирования наших смарт-контрактов – эмулятор блокчейна Ethereum Ganache, а в качестве криптокошелька – расширение для браузера MetaMask и офлайн-криптокошелек MyEtherWallet.
Рассмотрим пошагово установку перечисленного ПО. После установки необходимого ПО мы протестируем его работу на тестовом смарт-контракте из фреймворка Truffle.
.....
Рис. 1.6.1
Файл truffle-config.js содержит настройки подключения проекта к блокчейн-сети. Обратите внимание на то, что почти все строки в этом файле сейчас отключены. Они помечены символами «//», как комментарии. Давайте включим некоторые строки. Удалите символы «//» у строк с номерами 8–12, 18, 19 и 21, как на рис. 1.6.2.
.....