Создание смарт-контракта во Free TON - Free TON (Everscale) - CryptoTalk.Org Jump to content
Alex077

Создание смарт-контракта во Free TON

Recommended Posts

ff9b84e8bb80280bc3642.png
 

Мы уже рассказывали в нашем канале о том, что такое смарт-контракты во Free TON, теперь пришло время глубже погрузиться в эту тему и, возможно, развеять существующий миф о том, что писать контракты очень сложно.

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

 

Настраиваем среду разработки

Для написания нашего смарт-контракта, воспользуемся Visual Studio Code. Это лёгкая и довольно быстрая IDE от Microsoft с открытым исходным кодом, которая поддерживает множество расширений, разрабатываемых комьюнити. Загрузить её можно по ссылке https://code.visualstudio.com.

Далее нам необходимо установить расширение TONDev, чтобы упростить дальнейшую работу по написанию смарт-контракта и его компиляции. Сделать это можно напрямую из VS Code. Заходим во вкладку Extensions в левой части главного окна, в поиске вводим TONDev

e2430laecOf641tvq8vCfYsgMrUv5n0zPUVonv57yel16u-T3FOMtD_0kcX4ZJgcEQ8YsdvFUPO2QGLnTSVwRCWj8-7EvAqLD7yZfoDfr-B3421LxZ7zkxpbylrp3yOyTjDtAB8A
Поиск расширений в VS Code

 

Пишем контракт

Теперь мы готовы приступить к созданию нашего первого контракта. Для этого нам необходимо перейти во вкладку Explorer и открыть (создать) каталог, в котором будет располагаться наш код. В данном окне также можно клонировать проект из git-репозитория.

Ссылку на получившийся исходный код контракта вы сможете найти в конце статьи
xrDJKdzf0U6bGn2l6Dxm79g3QtFb1vVZlK92ciDmMmrX7XBgbg7stDMBeKfkzKZDcsv3OUM4vzT_FMZJ3dAKGgsq5Xdj7jXeGctkf4JVQSS1JXTLP690wrBuC3ieKLfE4fju_GNm
Обозреватель файлов VS Code

 

Далее мы сгенерируем шаблон для нашего контракта с помощью расширения TONDev, которое мы установили на предыдущем шаге. Для этого в появившемся обозревателе выбранного каталога вызовем контекстное меню нажатием правой кнопки мыши и выберем Create Solidity Contract.

Теперь у нас имеется сгенерированный файл контракта с расширением .sol. 

Но, как можно заметить, VS Code не поддерживает язык Solidity “из коробки” и отображает код контракта как простой текст. 

rha_XZNt4HU3qVHG2TT-hzSTn3xSH8t-z22YdkhXrDR49MN1wv-_axZ8qlf0WHZvDtYzT9sanJs1BnHM6931GmUy7uy_n3HLd9SEZYJn21yCVP47BDhW1LPq4yU9xJvCMOtU5huD
Сгенерированный код контракта без подсветки синтаксиса

 

Поэтому нам также понадобится соответствующее расширение. Переходим в уже известную нам вкладку Extensions и ищем “Solidity". Поскольку данный язык уже много лет используется для написания контрактов для сети Ethereum, поиск выдаёт огромное количество решений, созданных сообществом разработчиков по всему миру, поэтому выбирайте любое на свой вкус. В рамках данной статьи будет взято расширение с наибольшим количеством скачиваний от разработчика Juan Blanco

tw0rIay8UIuPwvQIfeQWxvOoKNWbFc7OcONqMTkZC3oHQtSlzIbS3Ta1sQI-YBUcrC8HHrD4euEgw4U7urBNFvzIsJe6vTYVEqo7ojlvsu-9YRHwqPptpfFBhmiQpLDg_FWyivc4
Поиск расширений в VS Code

 

Теперь код стало намного приятнее читать и легче воспринимать.

_l9AjVmzyTgXtWFgGrSeEWT9RVBfZ0q1C3JeGAdu3_pdkcw4KhL1icw3jC7P_NQBwvY8CdZx8pAGcdYVwM9Onxq2mrp4LbqIcG89PJ5siiQothbT9_fsan4oj8rKAuww2QS-ftOF
Сгенерированный код контракта с подсветкой синтаксиса языка Solidity

 

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

 

Читать далее...


                   

 

Share this post


Link to post
Share on other sites

А сколько стоит само создание контракта и загрузка его в сеть?

  • +3 1

Share this post


Link to post
Share on other sites
On 29.05.2021 at 19:23, Goldennbit said:

А сколько стоит само создание контракта и загрузка его в сеть?

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

Share this post


Link to post
Share on other sites
4 hours ago, vl77lp said:

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

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

  • +3 1

Share this post


Link to post
Share on other sites
4 hours ago, Goldennbit said:

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

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

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...