Создание смарт-контрактов Solidity для блокчейна Ethereum. Практическое руководство

Создание смарт-контрактов Solidity для блокчейна Ethereum. Практическое руководство

Эта книга поможет быстро приступить к созданию смарт-контактов Solidity и распределенных приложений DApp для блокчейна Ethereum. Она состоит из 12 уроков с практическими заданиями. Выполнив их, читатель сможет создавать собственные локальные узлы Ethereum, публиковать смарт-контракты и вызывать их методы, обмениваться данными между реальным миром и смарт-контрактами с помощью оракулов, работать с сетью Rinkeby. Книга адресована всем, кто интересуется передовыми технологиями в области блокчейнов и хочет быстро получить знания, позволяющие заниматься интересной и перспективной работой.

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

Читать онлайн Создание смарт-контрактов Solidity для блокчейна Ethereum. Практическое руководство


Введение

Наша книга предназначена для тех, кто хочет не только понять принципы работы блокчейна Ethereum, но и получить практические навыки в создании распределенных приложений DApp на языке программирования Solidity для этой сети.

Эту книгу лучше не просто читать, а работать с ней, выполняя практические задания, описанные в уроках. Для работы вам потребуются локальный компьютер, виртуальный или облачный сервер с установленной ОС Debian или Ubuntu. Также для выполнения многих заданий можно использовать Raspberry Pi.

На первом уроке мы рассмотрим принципы работы блокчейна Ethereum и основную терминологию, а также расскажем о том, где можно использовать этот блокчейн.

Цель второго урока – создать узел приватного блокчейна Ethereum для дальнейшей работы в рамках этого курса на сервере Ubuntu и Debian. Мы рассмотрим особенности установки основных утилит, таких как geth, обеспечивающего работу узла нашего блокчейна, а также демона децентрализованного хранилища данных swarm.

Третий урок научит вас проводить эксперименты с Ethereum на недорогом микрокомпьютере Raspberry Pi. Вы установите операционную систему (ОС) Rasberian на Raspberry Pi, утилиту Geth, обеспечивающую работу узла блокчейна, а также демон децентрализованного хранилища данных Swarm.

Четвертый урок посвящен аккаунтам и криптовалютным единицам в сети Ethereum, а также способам перевода средств с одного аккаунта на другой из консоли Geth. Вы научитесь создавать аккаунты, инициировать транзакции перевода средств, получать состояние транзакции и ее квитанцию.

На пятом уроке вы познакомитесь со смарт-контрактами в сети Ethereum, узнаете об их выполнении виртуальной машиной Ethereum.

Вы создадите и опубликуете в приватной сети Ethereum свой первый смарт-контракт и научитесь вызывать его функции. Для этого вы будете использовать среду разработки Remix Solidity IDE. Кроме того, вы научитесь устанавливать и использовать пакетный компилятор solc.

Также мы расскажем о так называемом бинарном интерфейсе приложения Application Binary Interface (ABI) и научим его использовать.

Шестой урок посвящен созданию скриптов JavaScript, работающих под управлением Node.js и выполняющих операции со смарт-контрактами Solidity.

Вы установите Node.js в ОС Ubuntu, Debian и Rasberian, напишете скрипты для публикации смарт-контракта в локальной сети Ethereum и вызова его функций.

Кроме того, вы научитесь переводить с помощью скриптов средства между обычными аккаунтами, а также зачислять их на аккаунты смарт-контрактов.

На седьмом уроке вы научитесь устанавливать и использовать популярную среди разработчиков смарт-контрактов Solidity интегрированную среду Truffle. Вы научитесь создавать скрипты JavaScript, вызывающие функции контрактов с помощью модуля truffle-contract, а также выполните тестирование своего смарт-контракта средствами Truffle.

Восьмой урок посвящен типам данных Solidity. Вы напишете смарт-контракты, работающие с такими типами данных, как знаковые и беззнаковые целые числа, числа со знаком, строки, адреса, переменные сложных типов, массивы, перечисления, структуры и словари.

На девятом уроке вы приблизитесь еще на шаг к созданию смарт-контрактов для основной сети Ethereum. Вы научитесь публиковать контракты при помощи Truffle в приватной сети Geth, а также в тестовой сети Rinkeby. Отладка смарт-контракта в сети Rinkeby очень полезна перед его публикацией в основной сети – там практически все по-настоящему, но бесплатно.

В рамках урока вы создадите узел тестовой сети Rinkeby, пополните его средствами и опубликуете смарт-контракт.

Урок 10 посвящен распределенным хранилищам данных Ethereum Swarm. Используя распределенные хранилища, вы экономите на хранении данных большого объема в блокчейне Ethereum.


Вам будет интересно
Данный материал предназначен в первую очередь для тех, кто только начал осваивать веб, не знает за какие ниточки потянуть и что сделать, чтобы понять, как это все работает. Не менее полезен материал будет и дизайнерам, которые рисуют макеты и слабо представляют, что с этим потом делает верстальщик. Скорее, он даже очень нужен, так как давно существует проблема взаимопонимания между дизайнерами и верстальщиками. В целом данный материала создавался для повышения компьютерной грамотности среди люде...
Читать онлайн
"Elastix – общайтесь свободно" – наиболее полная документация на русском языке по открытой платформе Elastix, предназначенной для создания Унифицированных Коммуникаций (Unified Communications). Во втором томе описано подключение Elastix к глобальным сетям коммуникаций, интеграция с сетью Skype, подключение абонентов к Elastix. На примере шлюзов Yeastar NeoGate GSM/E1/FXO рассмотрено подключение к мобильным сетям GSM, к цифровым сетям PRI ISDN, к аналоговым сетям PSTN. Разобраны варианты подключе...
Читать онлайн
В этой книге автор, сам прошедший путь от разработчика до менеджера в сфере IT, рассказывает неочевидные моменты, которые являются критически важными для правильного управления. Почему разработчики увольняются после повышения зарплаты? Как делать FixedPrice проекты? Почему Scrum не упрощает менеджмент? Книга содержит ответ на эти и многие другие вопросы. В книге есть много баек, которые показывают тяжёлую, но интересную жизнь менеджера в разработке. Иллюстратор обложки: Ксения Ерощенко. Иллюстра...
Читать онлайн
Цель этой книги – максимально быстро научиться применять нейросети (НС) для решения задач. Вы научитесь: создавать и обучать НС; обрабатывать изображения, цифры и тексты; встраивать НС в реальное приложение через REST API; выбирать архитектуру НС: число слоев, нейронов, функции активации, оптимизаторы, коэффициенты скорости обучения, функции ошибки, эпохи, батчи; работать с НС на основе многослойного перцептрона, свёрточными и рекуррентными; и даже сделать НС без ML-библиотек на чистом C#!...
Читать онлайн
Эта книга поможет вам быстро освоить основы робототехники и приступить к конструированию собственных роботов, разных систем с микроконтроллерами и даже элементов умного дома. Вам не потребуются знания языков программирования и паяльник. Изучайте микроконтроллеры и робототехнику по нашей книге, и вы сможете быстро освоить современные профессии. Вы научитесь программировать micro:bit версий 1.5 и 2, работать с кнопками, светодиодами, светодиодным и OLED-экраном, измерять температуру, ускорение, на...
Читать онлайн
Книга в простой форме отвечает на вопрос: как стать разработчиком ПО, не имея для этого навыков и соответствующего образования? Сегодня много книг повествует об обучении конкретному языку программирования или технологии, но здесь читатель найдет такое руководство, которое объясняет, что именно делать, чтобы стать IT-специалистом (прежде всего разработчиком) с нуля на любом из языков программирования. Книга не является справочником по конкретному языку программирования, это не учебник по алгоритм...
Читать онлайн
Что такое ГЕЙМДИЗАЙН? Это не код, графика или звук. Это не создание персонажей или раскрашивание игрового поля. Геймдизайн – это симулятор мечты, набор правил, благодаря которым игра оживает. Как создать игру, которую полюбят, от которой не смогут оторваться? Знаменитый геймдизайнер Тайнан Сильвестр на примере кейсов из самых популярных игр рассказывает как объединить эмоции и впечатления, игровую механику и мотивацию игроков. Познакомитесь с принципами дизайна, которыми пользуются ведущие студи...
Читать онлайн
Прошло почти двадцать лет с тех пор как появился Манифест Agile. Легендарный Роберт Мартин (Дядя Боб) понял, что пора стряхнуть пыль с принципов Agile, и заново рассказать о гибком подходе не только новому поколению программистов, но и специалистам из других отраслей. Автор полюбившихся айтишникам книг «Чистый код», «Идеальный программист», «Чистая архитектура» стоял у истоков Agile. «Чистый Agile» устраняет недопонимание и путаницу, которые за годы существования Agile усложнили его применение п...
Читать онлайн
Лучший нарнийский корабль «Покоритель Зари» был построен по приказу короля Каспиана. И вот уже ветер надувает паруса – неустрашимая команда во главе с королем, Люси, Эдмундом и их племянником Юстэсом отважилась отправиться на поиски семерых лордов, изгнанных диктатором Миразом, к далеким Восточным островам.Там, где заканчивается мир, – все самое интересное только начинается!...
Читать онлайн
Не знаю как сейчас, но стоило раньше спросить у кого-нибудь из детей, хотя бы восьмидесятых годов прошлого столетия о том, о чём они мечтают, то можно было услышать самый распространённый в то время ответ. Практически все дети на Земле мечтали улететь к звёздам. Открывать новые планеты и осваивать новые миры. Но никто из них никогда не задумывался о том, чем чревато подобное любопытство? Какие опасности сопровождают тех, кто может стать настолько смелым, что отправится туда, в темноту космическо...
Читать онлайн
Первая мировая, турецкий фронт. Немцы оборудовали у озера Ван артиллерийскую точку с гигантской гаубицей – «Большой Бертой». Чтобы вести прицельную стрельбу, им не хватает точной карты расположения русских позиций. Все силы бросаются на рекогносцировку. Еще немного, и пушка заговорит… Русская разведка быстро обнаруживает «Берту», и командование без промедления направляет диверсионную группу для ее уничтожения. Ответственное задание возложено на доблестного поручика Голицына. Но пробраться к тщат...
Читать онлайн
Александр Радищев – русский литератор-революционер, по выражению Екатерины II, «бунтовщик хуже Пугачева», – писатель глубокий и смелый. За книгу «Путешествие из Петербурга в Москву» Радищева посадили в Петропавловскую крепость. Суд приговорил его к смертной казни, которую императрица заменила лишением чинов и дворянства и ссылкой в сибирский острог. Эта книга – редчайший по силе просветительский трактат, написанный в виде путевых очерков, где и точные наблюдения путешественника, и вдохновенные л...
Читать онлайн