начнём с того что изучил: events как слой данных, архитектура реальных dapp приложений, подход к безопасности в web3
Выжимка изученого: 🙁
🟠events как слой данных:
events - это лог действий контракта в блокчейне. Проще говоря, это сообщение о том что произошло, как история браузера. Важно: events - это не состояние контракта, а отдельный слой данных
Контракт хранит состояние в storage, а events записывают, что произошло. Фронтенд подписывается на события и обновляет интерфейс, не читая напрямую storage
Когда транзакция выполняется, создаётся receipt с статусом, потраченным газом и списком логов. Events состоят из topics (для быстрого поиска) и data (данные события)
Пример: при переводе токенов контракт меняет балансы и создаёт event Transfer. Фронтенд или индексатор считывают его и сразу видят кто и сколько отправил
Главная мысль: events — это журнал действий контракта, отдельный data layer для внешних систем
🟠архитектура реальных dapp приложений:
многие думают: написал контракт → задеплоил → dapp готов. На деле контракт - только фундамент. Настоящий dapp - это несколько слоёв
1. Фронтенд - сайт в браузере, написан на JS/TS. Отвечает за кнопки, страницы, балансы. Не знает о блокчейне напрямую
2. Кошелёк - MetaMask, Rabby и др. Хранит ключ, подписывает и отправляет транзакции. Фронтенд формирует транзакцию, кошелёк подтверждает и отправляет в сеть
3. RPC провайдер — Infura, Alchemy, QuickNode. Фронтенд через него читает баланс, состояние контракта, события
4. Смарт-контракт - хранит состояние и логику. Меняет storage и создаёт events при транзакциях
5. Индексаторы - The Graph или собственные. Читают события, формируют базу данных, чтобы фронтенд быстро показывал информацию
Итог: пользователь → фронтенд → кошелёк → RPC → блокчейн → контракт → events → индексаторы → фронтенд
Главная мысль: dapp - это не только контракт, это целая система слоёв, которые вместе создают полноценное web3 приложение
🟠подход к безопасности в web3:
изначально я написал очень большой текст по всем трём темам, где всё подробно разжевал. Но тг просто не дал опубликовать его полностью, - слишком много символов. Поэтому с помощью нейронки я немного сократил текст, оставив главную суть. А по третьей теме дам вам просто очень классную статью по безопасности в мире web3 - держите
https://teletype.in/@vartcall/how-to-save
на этом всё, - как видите, буду менять структуру ежедневных результатов, давая вам больше полезной информации
та и в целом скоро буду больше упираться на практику, кодинг/создание первых проектов, показывая вам
gn🖤
