July 14, 2022

Роадмэп для фулстек разработчика блокчейна

Держите картинку.

На этом закончим статью. Надеемся, все было понятно.

Ладно, раскроем этапы чуточку подробнее. В этой статье разберем первую часть роадмэпа: языки и инструменты.

Языки для изучения

  1. Solidity
  2. Javascript

Solidity

Solidity — это хай-левл объектно-ориентированный язык для создания смарт-контрактов. На создания этого языка повлияли C++, Python и JavaScript. Солидити разработан для виртуальной машины Ethereum (EVM). Более подробную информацию о том, какие языки послужили источником для Solidity, можно найти в разделе «Влияние языков».

Solidity статически типизирован, поддерживает наследование, библиотеки и сложные типы среди прочих фишек.

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

При развертывании контрактов следует использовать последнюю выпущенную версию Solidity. Обычно только последняя версия получает исправления безопасности. Кроме того, регулярно вносятся изменения, приводящие как к багам:) так и к новому функционалу.

Видео туториал по солидити можно глянуть ниже.

Библиотека документов по Solidity.

Javascript

Вместе с Javascript вы должны знать о front-end разработке, т.е. HTML, CSS, Bootstrap, React, Typescript.

Для изучения этого языка также есть множество бесплатных курсов, в том числе и на YouTube.

Инструменты, которые нужно освоить

Remix

Мастхэв познакомиться с Remix. Это приложение с открытым исходным кодом. Оно ускоряет разработку и имеет богатый набор плагинов с интуитивно понятным графическим интерфейсом. Ремикс используется на всем пути разработки контрактов, а также выступает в качестве игровой площадки для изучения и преподавания Ethereum.

Truffle

Среда тестирования для блокчейнов с использованием EVM. Служит для облегчения жизни девса. С Truffle вы получаете:

  • Встроенную компиляцию смарт-контрактов, связывание, развертывание и бинарный менеджмент.
  • Автоматизированное тестирование контрактов для быстрой разработки.
  • Расширяемая сценариями структура развертывания и миграции.
  • Управление сетью для развертывания в любом количестве публичных и частных сетей.
  • Управление пакетами с помощью EthPM и NPM с использованием стандарта ERC190.
  • Интерактивная консоль для прямого связи с контрактом.
  • Настраиваемый пайплайн с поддержкой тесной интеграции.
  • Внешний скрипт-бегунок, выполняющий скрипты в среде Truffle.

Документы по Truffle здесь.

А на видео ниже индус обучит вас Truffle за полтора часа.

UPD

В чате порекомендовали HardHat вместо Truffle. Он более гибкий и на нем можно решать более широкий круг задач. Хотя на начальном этапе нет разницы.

MetaMask

Это безопасный зашифрованный кошелек для покупки/продажи/обмена/хранения крипты. Доступен как расширение для браузера и мобильное приложение.

MetaMask предоставляет собой самый простой и в то же время безопасный способ подключения к приложениям на основе блокчейна. Вы всегда контролируете ситуацию при взаимодействии с новым децентрализованным интернетом.

MetaMask генерирует пароли и ключи на вашем устройстве, поэтому только вы имеете доступ к своим учетным записям и данным.

Ganache

Персональный блокчейн для разработки Ethereum, который можно использовать для развертывания контрактов, разработки приложений и тестирования апок. Есть декстопная версия и в виде командной строки (ранее известной как TestRPC). Ganache доступен для Windows, Mac и Linux.

Ganache — это блокчейн для быстрой разработки распределенных приложений Ethereum и Corda. Вы можете использовать Ganache на протяжении всего цикла разработки; это позволит вам разрабатывать, развертывать и тестировать ваши приложения в безопасной и детерминированной среде.

Ganache поставляется в двух вариантах: UI и CLI. Ganache UI - это декстопное приложение, поддерживающее технологии Ethereum и Corda. Инструмент командной строки, ganache-cli , доступен для разработки Ethereum.

Документы для разработки с помощью командной строки.