Это вводная статья в разработку смарт контрактов под блокчейн Free TON. Здесь мы поможем Вам подготовиться к разработке первых смарт контрактов, рассмотрим настройку окружения для разработки. Акцент мы будем на контракты на языке Solidity, так как это наиболее простой способ познакомиться с блокчейном.
Solidity изначально разработан для блокчейна Ethereum. Но к счастью, умельцы портировали компилятор для виртуальной машины TON.
Очень важный файл, который непременно пригодиться в будущем: https://github.com/tonlabs/TON-Solidity-Compiler/blob/master/API.md - документация ко всем функциям в TON-Solidity. Стоит отметить, что отличий от эфировского solidity тут достаточно, поэтому к этому документу придётся часто обращаться.
Настройка окружения
Итак, чтобы легко начать, нам понадобятся:
✍ VisualStudio Code - IDE
✍ Плагин Tondev
✍ Node.js и NPM
✍ Docker
✍ Консольная утилита TONDEV
Установить все это достаточно просто. Если вы раньше не устанавливали пакеты через npm, то для установки консольного TONDEV, откройте консоль и выполните команду npm i -g tondev
После установки требуемых программ, нам надо развернуть локальный блокчейн. Для этого открываем консоль и пишем:tondev se start
Эта команда скачает и установит образ TON OS SE с уже настроенной тестовой сетью.
Далее установим консольную утилиту tonos-cli, чтобы взаимодействовать с блокчейном:tondev tonos-cli install
Теперь давайте проверим, все ли работаетtonos-cli -u http://localhost account 0:841288ed3b55d9cdafa806807f02a0ae0c169aa5edfe88a789a6482429756a94
Аргумент -u http://localhost
указывает, что мы подключаемся к локальному блокчейну 0:841288ed3b55d9cdafa806807f02a0ae0c169aa5edfe88a789a6482429756a94
- это адрес гивера по умолчанию. На нем хранятся все монеты в тестовой сети. И в будущем мы будем его использовать, когда будет тестировать контракты.
Мы должны получить такой ответ. Если все в порядке, значит Docker нормально работает и все установлено.
Создание Hello Wold
В TONDEV есть демо проекты, чтобы их посмотреть выполните tondev js demo
Для создания Hello World выполним tondev js demo hello
в той директории, где вы хотите разместить будущий проект.
Теперь перейдём к Visual Studio Code, где мы и будем писать код. Открываем папку с проектом.
Мы видим, что в проекте уже есть контракт Hello.sol и JS код с SDK, который работает с этим контрактом.
Чтобы запустить проект надо установить зависимости: npm install
Работу со смарт контрактами мы подробнее разберём в следующей статье.