Публикации по теме 'solidity'


Расшифровка памяти контракта Ethereum
Эта статья является частью первой из двух серий, в которых исследуется механизм хранения виртуальной машины Ethereum (EVM). Часть 2 посвящена инструменту декодирования хранилища, написанному с использованием концепций, изложенных в этой статье. Память Ethereum EVM позволяет выполнять код смарт-контракта. Состояние контракта или память хранятся по адресу контракта. Это хранилище можно представить как массив, подобный структуре данных бесконечной длины, расположенный по адресу..

Импорт Solidity в VS Code: правильный путь
Долгое время я думал, что сделать мой VS Code довольным внешним импортом файла Solidity ( так, как того требует Трюфель, - это безнадежная задача). Я справился с красными кричащими волнистыми линиями. Я научился игнорировать и 😒. TL; DR Если вы настраиваете стандартный проект трюфелей через `truffle init` или` truffle unbox`, вы можете использовать следующие настройки в VS Code: "solidity.packageDefaultDependenciesContractsDirectory": "",..

Прочность и линейная сборка
Ассемблер - это язык низкого уровня, используемый для непосредственного взаимодействия с процессором. Язык высокого уровня, такой как C, Go или Java, компилируется до сборки перед выполнением. Интересной особенностью Solidity является поддержка встроенной сборки. Сборка используется для непосредственного взаимодействия с EVM с помощью кодов операций. Сборка дает вам гораздо больше контроля, позволяя выполнять логику, которая может быть невозможна только с Solidity. Вот документация по..

LLL: жизнеспособная альтернатива Solidity?
До Solidity разработчики смарт-контрактов Ethereum использовали LLL (сокращение от Lisp-Like Language). Будучи несколько языком низкого уровня , LLL часто сравнивают с языком ассемблера . »Тем не менее, его простая и минималистичная структура делает его вполне читабельным при правильном форматировании (и он намного проще, чем обычный Лисп ). Вместо фигурных скобок, подобных JavaScript, разработчики LLL просто используют круглые скобки для синтаксического анализа (как это делает..

Введение в Solidity, язык программирования Ethereum
Solidity - это объектно-ориентированный язык программирования, который используется для написания смарт-контрактов на различных платформах блокчейнов. Он в основном связан с Ethereum, поскольку разработан некоторыми основными авторами монеты. Впервые он был предложен в августе 2014 года компьютерным ученым Гэвином Вудом, а затем приобретен командой Solidity проекта Ethereum. Почему именно Solidity? Solidity - это язык программирования со статической типизацией, предназначенный для..

Solidity: действительно ли нам нужна более безопасная математика?
Взгляните на библиотеку SafeMath от OpenZeppelin В Solidity есть множество альтернатив тому, что вы считаете само собой разумеющимся на других языках. Струны и математика - два примера. «Арифметические операции в Solidity переносятся при переполнении. Это может легко привести к ошибкам, потому что программисты обычно предполагают, что переполнение вызывает ошибку, что является стандартным поведением для языков программирования высокого уровня. SafeMath восстанавливает эту..

Взгляд на ReentrancyGuard Open Zeppelin
Написание смарт-контрактов - относительно новая практика, и окружающая среда полна опасностей. Хорошая новость заключается в том, что болезненные уроки сообщества привели к выработке набора стандартов и передового опыта. Откройте для себя Open Zeppelin , проверенную в бою фреймворк многоразовых смарт-контрактов Ethereum с открытым исходным кодом. Они предоставляют полезные контракты, в которых используются стандартные шаблоны безопасности, которые вы можете использовать в своих..