Здравствуйте, сколько стоит курс Работа с Ethereum? |
Знакомство с Remix - web-среда Solidity IDE. Понимание основ среды Ethereum
Журнал событий в Remix
Выполним вызов функции. При вызове функции в нижней части окна отображаются все задействованные транзакции.
Сейчас транзакция ожидает обсчета, а затем она будет обработана сетью блокчейна. Также можно получить больше информации о транзакции. Для каждой конкретной транзакции можно увидеть, с какого адреса и на какой она была отправлена. Напомним, что сейчас все транзакции выполняются в эмулированной среде блокчейна, и существуют только внутри этого браузера. Можно увидеть установленный предел расхода газа. Также видны отправляемые в транзакции данные, которые могут взаимодействовать со смарт-контрактом по этому адресу.Инструментарий для отладки
В среде Remix отладчик (вкладка Debugger) поддерживает последовательную работу по шагам.
Очень удобно иметь отладчик, включенный непосредственно в код. Можно устанавливать точки прерывания или воспользоваться кнопкой отладки, чтобы увидеть, как проходит транзакция после отправки в сеть блокчейна.
Этот функционал особенно удобен при работе со сложными функциями из большого числа шагов или циклов.
На этапе отладки можно узнать, что последняя операция кода не была выполнена или что кое-где необходимо заменить знак "меньше или равно" знаком "больше или равно" до отправки транзакции в реальный блокчейн.
Таковы типичные случаи применения отладчика. Иногда приходится иметь дело с обработкой исключений, в этих случаях отладчик позволяет быстрее установить участок возникновения исключения.
Краткий обзор инструментов для статического анализа
Вкладка Analysis содержит инструменты статического анализа.
При статическом анализе код просматривается на предмет ошибок описания рабочей среды, и, в случае их нахождения, выводятся предупреждения. Например, для каких-то функций не описаны требования по расходу газа, или объявлены неиспользуемые переменные. В качестве предупреждений могут выводиться сообщения о том, что код использует временную метку блока, например, now, основанную на временной метке блока майнера, вместо временной метки блока из блокчейна.
Таковы типичные предупреждения, выдаваемые инструментарием для статического анализа. Если вы уверены в своих действиях, их можно игнорировать, но зачастую они полезны при указании на опечатки или использование циклов, когда без них можно обойтись, поэтому в общем случае статическим анализом не стоит пренебрегать.
Помощь и поддержка
На вкладке Support можно найти прямые ссылки на чат сообщества Remix, где можно пообщаться на тему Remix или задать вопросы участникам этого сообщества.
Итоги
В следующих разделах мы будем говорить о среде Solidity и поддерживаемых ей возможностях - циклах, ассоциациях, структурах и так далее.