Роадмэп для фулстек разработчика блокчейна
На этом закончим статью. Надеемся, все было понятно.
Ладно, раскроем этапы чуточку подробнее. В этой статье разберем первую часть роадмэпа: языки и инструменты.
Языки для изучения
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.
Среда тестирования для блокчейнов с использованием EVM. Служит для облегчения жизни девса. С Truffle вы получаете:
- Встроенную компиляцию смарт-контрактов, связывание, развертывание и бинарный менеджмент.
- Автоматизированное тестирование контрактов для быстрой разработки.
- Расширяемая сценариями структура развертывания и миграции.
- Управление сетью для развертывания в любом количестве публичных и частных сетей.
- Управление пакетами с помощью EthPM и NPM с использованием стандарта ERC190.
- Интерактивная консоль для прямого связи с контрактом.
- Настраиваемый пайплайн с поддержкой тесной интеграции.
- Внешний скрипт-бегунок, выполняющий скрипты в среде Truffle.
Документы по Truffle здесь.
А на видео ниже индус обучит вас Truffle за полтора часа.
В чате порекомендовали HardHat вместо Truffle. Он более гибкий и на нем можно решать более широкий круг задач. Хотя на начальном этапе нет разницы.
Это безопасный зашифрованный кошелек для покупки/продажи/обмена/хранения крипты. Доступен как расширение для браузера и мобильное приложение.
MetaMask предоставляет собой самый простой и в то же время безопасный способ подключения к приложениям на основе блокчейна. Вы всегда контролируете ситуацию при взаимодействии с новым децентрализованным интернетом.
MetaMask генерирует пароли и ключи на вашем устройстве, поэтому только вы имеете доступ к своим учетным записям и данным.
Ganache
Персональный блокчейн для разработки Ethereum, который можно использовать для развертывания контрактов, разработки приложений и тестирования апок. Есть декстопная версия и в виде командной строки (ранее известной как TestRPC). Ganache доступен для Windows, Mac и Linux.
Ganache — это блокчейн для быстрой разработки распределенных приложений Ethereum и Corda. Вы можете использовать Ganache на протяжении всего цикла разработки; это позволит вам разрабатывать, развертывать и тестировать ваши приложения в безопасной и детерминированной среде.
Ganache поставляется в двух вариантах: UI и CLI. Ganache UI - это декстопное приложение, поддерживающее технологии Ethereum и Corda. Инструмент командной строки, ganache-cli , доступен для разработки Ethereum.
Документы для разработки с помощью командной строки.