Ethereum EVM и Solidity — страница 2
Кошелёк, подпись, gas, типы, storage, события, ошибки, ABI, права, ERC-20 и NFT.
Материалы
- Storage в Solidity: постоянное состояние контракта
Изменение storage-ссылки меняет запись курса
- Memory и calldata в Solidity: временные данные
Временный массив и входное сообщение имеют разные правила изменения
- Struct в Solidity: структура записи публикации
Course объединяет отпечаток и активность в одну модель
- Mapping в Solidity: ключи и отсутствующая запись
Ключ не создаёт перечислимую таблицу и возвращает стандартное значение
- Constructor и immutable в Solidity: настройка издателя
Право публикации задаётся при создании экземпляра
- msg.sender в Solidity: кто вызывает функцию
Полномочия проверяются по адресу текущего отправителя
- Модификаторы Solidity: проверка onlyPublisher
Обе функции изменения используют одну явную проверку права
- Видимость функций Solidity и вспомогательные операции
External и internal задают маршруты вызова, но не заменяют авторизацию
- Custom errors в Solidity: собственные ошибки контракта
Ошибки Unauthorized, InvalidCourse и NotActive отражают разные условия
- Events в Solidity: события реестра публикаций
Логи показывают успешные переходы, текущее состояние читается отдельно
- ABI смарт-контракта: кодирование вызовов Solidity
Сигнатура и типы задают кодирование вызова и ответа
- Массивы в Solidity: ограничения и пагинация
Размер ответа и число операций заданы отдельными пределами
- Время блока в Solidity: сроки действия записи
Срок относится к явно введённой модели, а не к таймеру браузера
- Solidity: публикация и замена записи в реестре
Publish создаёт запись либо заменяет hash и активирует её
- Solidity: деактивация записи с сохранением хеша
Отзыв меняет active, оставляя текущий hash для объяснения истории
- Версии контракта Solidity: реестр CourseCatalogV2
Каждая новая публикация получает постоянный номер версии в отдельной модели
- Библиотеки Solidity: повторное использование правил
Pure-помощник объединяет проверку значений без новых полномочий
- Наследование в Solidity: расширение реестра
Производный viewer наследует настройки, но читает отдельный экземпляр
- Solidity: проверка манифеста публикации
Сайт сопоставляет сеть, запись и конкретный внешний файл
- Контракт реестра на Solidity: переходы состояния
Самостоятельный базовый контракт с зафиксированной семантикой публикации и отзыва
- Solidity: роли, токены и управление
Тридцать последовательных уроков учебной библиотеки: Solidity: роли, токены и управление
- Ownable в Solidity: первоначальный владелец контракта
Отдельный реестр имеет передаваемого владельца и явный первоначальный адрес
- Ownable2Step в Solidity: двухэтапная передача владельца
PendingOwner принимает право отдельным действием, прежде прежний owner сохраняется
- AccessControl в Solidity: роли редакции
Publisher, revoker и admin имеют разные права в отдельном EditorialCatalog