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

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

В представленном учебнике рассматривается создание смарт-контрактов для блокчейн-сети Ethereum на языке программирования Solidity в операционной системе Windows. Мы также опишем развертывание окружения для создания и тестирования смарт-контрактов и децентрализованных приложений (DApps). Более того, в завершение курса мы создадим свою собственную блокчейн-сеть. Данный учебный курс создан на базе ООО «Лаборатория цифровой трансформации» при поддержке ООО «Цифровые технологии».

Жанр: Современная проза
Цикл: Не является частью цикла
Год публикации: 2020

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


Введение

В настоящее время технологии распределенных реестров (блокчейн-технологии) проникают во многие сферы человеческой деятельности. Изначально технология блокчейн использовалась в финансовой сфере для создания криптовалют. Затем была разработана технология защищенного хранения небольших объемов информации. И наконец, после появления блокчейна Ethereum стало возможно создавать программы в блокчейн-сетях.

Блокчейн Ethereum обладает своей виртуальной машиной – EVM (Ethereum Virtual Machine). Данное программное обеспечение позволяет децентрализованно хранить и запускать программы внутри блокчейн-сети Ethereum. В такой роли блокчейн-сеть работает как некий суперкомпьютер, где программное обеспечение хранится и выполняется на множестве компьютеров (узлов), подключенных к блокчейн-сети.

Программы, выполняемые в EVM, называются смарт-контрактами. Наиболее популярным языком программирования смарт-контрактов в настоящее время является язык программирования Solidity. В основу языка программирования Solidity был положен язык Java Script. Поэтому если вы знаете такие языки программирования, как Java Script, Java или С++, то изучение Solidity будет для вас достаточно простым.

В представленном учебнике рассматривается создание смарт-контрактов для блокчейн-сети Ethereum на языке программирования Solidity в операционной системе Windows. Мы также рассмотрим развертывание окружения для создания и тестирования смарт-контрактов и децентрализованных приложений (DApps). Более того, в завершение курса мы создадим свою собственную блокчейн-сеть.

Весь учебник разбит на шесть недель. Неделя – это глава учебника, посвященная определенному разделу создания смарт-контрактов. Каждая неделя разбита на уроки. Урок – это определенная тема в изучении программирования смарт-контрактов.

Учебник состоит из следующих глав-недель.

• Неделя № 1. Развертывание рабочего окружения («песочницы») для создания и тестирования смарт-контрактов на языке программирования Solidity.

• Неделя № 2. Создание и тестирование простейших смарт-контрактов.

• Неделя № 3. Хранение и обработка данных в распределенных реестрах.

• Неделя № 4. Реализация игровых смарт-контрактов.

• Неделя № 5. Финансовые смарт-контракты.

• Неделя № 6. Интерфейс, тестирование и публикация смарт-контрактов.

Теперь рассмотрим применяемые в учебнике обозначения.

1. В учебнике применяется сквозная нумерация рисунков. То есть «рис. 3.5.1» обозначает первый рисунок пятого урока третьей недели.

2. На рисунках важные места интерфейса выделены красными стрелками.

3. В тексте учебника встречаются замечания, выделенные серым цветом. Замечания – это важная или справочная информация, непосредственно не связанная с темой урока.

4. Некоторые большие блоки кода вынесены в приложение.

5. В тексте ссылки на источники информации обозначаются в квадратных скобках. Например, [4].


Для разработки смарт-контрактов нам необходимо установить следующее программное обеспечение (ПО).

1. Visual Studio Code и расширение для работы с языком программирования Solidity (https://code.visualstudio.com/).

2. Node.js – компилятор JavaScript в машинный код (https://Node.js.org/ru/).

3. Фреймворк Truffle (https://www.trufflesuite.com/truffle).

4. Эмулятор Ganache (https://www.trufflesuite.com/ganache).

5. Криптокошелек MetaMask (https://MetaMask.io/).

6. Офлайн-криптокошелек MyEtherWallet (https://github.com/kvhnuke/etherwallet/releases).

7. Установочный пакет блокчейн-сети Geth (https://geth.ethereum.org/downloads/).

Все описание установки вышеперечисленного ПО описано в уроках первой недели.

Данный учебник предназначен для читателей, желающих освоить разработку смарт-контрактов на языке программирования Solidity. Учебник также подойдет тем, кто планирует развернуть собственную блокчейн-сеть и создавать свои децентрализованные приложения (Dapp).


Вам будет интересно
Жизнь красавчика Димы слаще сиропа. А миллионы отца всего лишь приятный бонус! Так он думал, пока не лишился поддержки семьи в наказание от строгого родителя.Для Нади жизнь уже давно не театр, а настоящий зверинец. А уж после того, как в зоопарке, где она работает, появился бедный, как церковная мышь, сын миллионера… всё и вовсе пошло наперекосяк!Не пропустите! Этим летом плохие мальчики будут наказаны, а хорошие девочки вознаграждены!Содержит нецензурную брань....
Читать онлайн
Девушку, для которой звезды – гости на вечеринке, вряд ли покорить сладкими речами. Но один космический монстр должен заполучить доверие той, которая не верит никому. Богатая избалованная красотка и воскресший коварный король – кто из них окажется сильнее? Ведь жертва не всегда готова проиграть, а хвост ледяной кометы растаять бесследно....
Читать онлайн
Двадцать лет назад война между островным государством Мидгард и континентальной империей Ойкумена завершилась сокрушительным поражением Архипелага. Страны заключили шаткое перемирие. Теперь Мидгард копит силы, чтобы взять реванш. Военная академия готовит пилотов «валькирий» – воздушных боевых машин. Лишь немногие пройдут жесткий отбор…Альдис и Хельг – первогодки. Чтобы стать лучшими, им предстоит бороться со сверстниками, с хитростью наставников и собственными страхами. Но не все так просто, как...
Читать онлайн
Ахерон. Мир, прошедший сквозь огненный ад и вековую изоляцию. Разведывательный рейд оказался лишь прелюдией к основным событиям. Теперь перед горсткой отчаянных бойцов стоит куда более сложная задача: найти и обезвредить базу пиратского клана. Ставки слишком высоки, и любая ошибка может привести к потере целого мира. Но капитан-лейтенант Тарасов не привык отступать перед трудностями. Цель определена, остается лишь до нее добраться и открыть огонь на поражение....
Читать онлайн