2ой урок по солидити
Показать как работать с трюфелем
Сегодня мы продолжим изучать синтаксис solidity и попробуем пописать уже реальные контракты
Перед этим давайте разберемся ещё с некоторыми стругами данных которые присутствовуют в солидити
Mappings
На первом занятие мы с вами рассматривали структуры и array(множества), mapping другой способ хранения информации в солидити, представляющий из себя key/ value хранилище
Синтаксис маппинга следующий
mapping(address=> uint) public accoutBalance;
mapping(uint=>string) public userIdToName;
Вторая вещь, которую следует рассмотреть это Понятие адреса в солидити
Как ва помните блокчейне эфириума состоит из аккаунтов, которые условно можно сравнить с банковскими аккаунтами. У аккаунта есть баланс эфиров, вы на данный аккаунт можете посылать и принимать эфир, каждый аккаунт обладает адресом, который является уникальным индетификатором,указывающим на этот аккаунт, и выглядит
(Показать на метамаск)
Каждым адресам владеет какой-то юзер или смарт контракт, соответсвенно мы можем использовать адрес как уникальный индетификатор
Для нашего примера 1.sol давайте будем хранить mapping в котором будем учитывать к какому преподавателю принадлежит какой ученик
И второй маппинг в котором будем хранить целочисленное значение учеников у каждого учителя
Следующий концепт который мы рассмотрим это
Msg.sender
msg.sender
В солидидти, есть определенные глобальные переменные, доступные для всех функций, одна из них msg.sender, которая обозначает адресс человека или смарт контракта который вызвал данную функцию.