Чтение онлайн

на главную - закладки

Жанры

Разработка смарт-контрактов в Ethereum
Шрифт:

Поверх сети Ethereum создаются три типа приложений.

Первая категория – это финансовые приложения, предоставляющие пользователям способы заключения контрактов с использованием их денег.

Это включает в себя суб-валюты, финансовые деривативы, контракты хеджирования, сберегательные кошельки, и т. д.

Вторая категория – это полу-финансовые приложения, в которых задействованы деньги, но есть также не денежная сторона, например, оплата вычислительных задач.

Наконец, существуют такие приложения, как онлайн-голосование, которые не являются финансовыми.

Контракт

сам по себе не является децентрализованным приложением.

Децентрализованное приложение состоим из комбинации контракта и графического интерфейса для использования этого контракта.

При этом интерфейс реализован как веб-страница HTML/CSS/JS со специальным Javascript API в виде библиотеки web3.js для работы с блок-цепочкой Ethereum.

Под капотом эта библиотека связывается с локальным узлом через вызовы remote procedure call RPC.

И такое приложение будет работать только в клиенте Ethereum, а не в обычном веб-браузере.

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

Одноранговый распределенный протокол для обмена сообщениями получил название whisper.

Он предоставляет пользователям возможности для личного защищенного общения с поддержкой отправки сообщений одному или нескольким адресатам и рассылке широковещательных сообщений.

Одноранговый протокол для обмена статическими файлами получил название swarm.

Whisper – это одноранговый протокол для конфиденциального обмена сообщениями с коротким сроком жизни.

Заголовок сообщений (тема) в Whisper хэшируется, а сами сообщения могут быть зашифрованы с помощью ключей в целях защиты данных.

Swarm представляет собой мотивированный файлообмен.

Файлы делятся на части, хранящиеся на узлах сети.

Для ведения учета отправленных и полученных частей файлов узлы используют специальный учетный протокол, а сама деятельность узлов оплачивается микроплатежами – мера, призванная поощрить кооперацию между ними.

Solidity Remix

Solidity – это высокоуровневый язык для виртуальной машины Ethereum с синтаксисом, похожим на JavaScript.

Программы на языке Solidity транслируются в байткод виртуальной машины Ethereum.

Для разработки смарт контрактов и изучения языка Solidity рекомендуется использовать среду разработки Remix.

Remix – это среда IDE для языка программирования Solidity, которая имеет встроенный отладчик и среду тестирования.

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

Вместе с Mist или любым инструментом, который использует библиотеку web3, Remix можно использовать

для тестирования и отладки децентрализованного приложения.

Доступна онлайн версия среды Remix.

Также можно установить локальную версию среды Remix.

Преимущество запуска локальной версии среды Remix заключается в том, что вы можете связаться с клиентом узла Ethereum, запущенным на вашей локальной машине через API-интерфейс Ethereum JSON-RPC, и локально выполнить смарт контракты.

Для установки локальной версии среды Remix можно открыть ветку github gh-pages и скачать архив.

Затем распаковать его и открыть страницу index.html.

Также можно установить Remix как npm модуль.

После установки Remix запускается командой remix-ide и открывается в браузере по адресу localhost.

При такой установке также устанавливается модуль Remixd – модуль npm, который предоставляет веб-приложению Ремикса доступ к папке на локальном компьютере.

По умолчанию это папка user.

Из Remix IDE вам необходимо активировать это соединение с локальным компьютером.

Для этого нажмите на значок подключения к локальному хосту.

В результате общая папка будет доступна в проводнике файлов среды Remix.

При запуске среды Remix из архива с помощью страницы index.html, доступа к папке локального компьютера не будет.

Для доступа нужно установить модуль Remixd глобально.

А затем запустить Remixd и расшарить какую-нибудь папку.

После этого можно перезапустить Remix и нажать кнопку соединения.

В результате общая папка будет доступна в проводнике файлов среды Remix.

Remix File Explorer

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

Вы можете увидеть их в папке браузера.

Вы всегда можете переименовать, удалить или добавить новые файлы в проводник файлов.

Поделиться:
Популярные книги

Землянка для двух нагов

Софи Ирен
Фантастика:
космическая фантастика
5.00
рейтинг книги
Землянка для двух нагов

Газлайтер. Том 8

Володин Григорий
8. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 8

Искушение генерала драконов

Лунёва Мария
2. Генералы драконов
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Искушение генерала драконов

Жена со скидкой, или Случайный брак

Ардова Алиса
Любовные романы:
любовно-фантастические романы
8.15
рейтинг книги
Жена со скидкой, или Случайный брак

Начальник милиции 2

Дамиров Рафаэль
2. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции 2

Князь

Шмаков Алексей Семенович
5. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
сказочная фантастика
5.00
рейтинг книги
Князь

Возвращение Безумного Бога

Тесленок Кирилл Геннадьевич
1. Возвращение Безумного Бога
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Возвращение Безумного Бога

Отверженный VIII: Шапка Мономаха

Опсокополос Алексис
8. Отверженный
Фантастика:
городское фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Отверженный VIII: Шапка Мономаха

Последняя Арена 10

Греков Сергей
10. Последняя Арена
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Последняя Арена 10

Жестокая свадьба

Тоцка Тала
Любовные романы:
современные любовные романы
4.87
рейтинг книги
Жестокая свадьба

Отверженный VI: Эльфийский Петербург

Опсокополос Алексис
6. Отверженный
Фантастика:
городское фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Отверженный VI: Эльфийский Петербург

Князь Мещерский

Дроздов Анатолий Федорович
3. Зауряд-врач
Фантастика:
альтернативная история
8.35
рейтинг книги
Князь Мещерский

Морской волк. 1-я Трилогия

Савин Владислав
1. Морской волк
Фантастика:
альтернативная история
8.71
рейтинг книги
Морской волк. 1-я Трилогия

Позывной "Князь"

Котляров Лев
1. Князь Эгерман
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Позывной Князь