ERC-20, ERC-721 и ERC-1155: чем отличаются токены и NFT простыми словами
12-12-2025, 22:38
Авторизуйтесь или зарегистрируйтесь, чтобы оценивать материалы, создавать записи и писать комментарии.
Авторизоваться© 2026 24k.ru. Все материалы носят исключительно информационный характер и не являются индивидуальной инвестиционной рекомендацией (ФЗ-39 «О рынке ценных бумаг»). Криптовалюты не являются законным средством платежа в РФ (ФЗ-259). Используя сайт, вы соглашаетесь с нашей Политикой конфиденциальности и использованием cookie.
Solidity, Vyper и Yul — три языка/уровня, через которые вы можете писать смарт-контракты для EVM и большинства L2 (Optimistic и многие zk-решения с EVM-совместимостью). Новичку важно понять, что это не “конкуренты на равных”, а скорее разные этажи: Solidity и Vyper — высокоуровневые языки для большинства задач, а Yul — низкоуровневый слой для точечной оптимизации и понимания того, как код реально исполняется внутри EVM.
База по терминам: EVM, смарт-контракты. Справки по языкам: Solidity, Vyper, Yul.
Коротко: если вы выбираете “первый язык” для разработки под EVM и L2 — почти всегда стартуют с Solidity. Vyper имеет смысл, если вам важен минимализм и более “ограниченный” синтаксис. Yul — это не стартовый язык, а инструмент для понимания EVM и узкой оптимизации (когда уже уверенно пишете на Solidity/Vyper).
В EVM-экосистеме вы редко “пишете один контракт”. Обычно вы:
Для L2 добавляется практический слой: мосты/депозиты, особенности комиссий и доказательств, совместимость с EVM (EVM-equivalent vs EVM-compatible), и модели рисков самой L2. База: Layer 2.
Solidity — основной язык экосистемы: подавляющее большинство DeFi, NFT, DAO и инфраструктуры написано на Solidity. Это значит:
Сюда логично привязать безопасность: reentrancy, delegatecall/прокси-риски.
Vyper выбирают, когда хочется более “узкого” языка с меньшим количеством сложных конструкций. Он часто ассоциируется с подходом “лучше меньше возможностей — меньше сюрпризов”.
Экосистема вокруг Vyper обычно уже: меньше готовых компонентов, меньше “копипаста” решений, меньше разработчиков, поэтому в коммерческой разработке чаще требуют Solidity, а Vyper — это доп-навык.
Yul — низкоуровневый язык/IR (intermediate representation), который близко стоит к тому, как компилятор и EVM реально исполняют ваш код. Его используют для:
Потому что низкий уровень увеличивает риск ошибок в логике и безопасности. Вы выигрываете в контроле и gas, но проигрываете в безопасности и читаемости, если не понимаете хорошо EVM и storage. Поэтому Yul обычно учат после уверенного Solidity/Vyper — как “второй круг” развития.
Если хотите углубиться: опкоды EVM, storage layout, паттерны gas-оптимизации.
Для разработчика плюс L2 в том, что вы часто можете использовать те же контракты и инструменты, что в L1. Но нужно учитывать:
Справка по совместимости: EVM-equivalent vs EVM-compatible.
Всегда тестируйте поведение на целевой сети (или её тестнете), особенно если ваш протокол чувствителен к газу, к порядку транзакций или к “данным” (много calldata).
| Проект | Что вы учите | Какие ошибки поймаете |
|---|---|---|
| ERC-20 токен + роли | интерфейсы, события, доступы, mint/burn | права доступа, ошибки approve, избыточные полномочия |
| Простой лендинг (deposit/borrow) | учёт долей, проценты, ликвидации (упрощённо) | округления, инварианты, “что если цена изменилась” |
| DEX-swap “в песочнице” | AMM-механика, slippage, edge-cases | MEV-эффекты, неверные допущения про порядок транзакций |
Для большинства задач и рынка — с Solidity: больше tooling, примеров и совместимости. Vyper разумно учить вторым, если вам близок минималистичный стиль и вы понимаете, что экосистема вокруг уже.
Нет. Yul нужен для углубления: понимания EVM и точечной оптимизации. Большинство контрактов пишутся без ручного Yul. Но знание Yul полезно, когда вы упираетесь в gas или хотите лучше понимать опкоды и поведение компилятора.
В большинстве EVM-совместимых L2 — тот же Solidity/Vyper. Разница чаще не в языке, а в окружении: комиссии (данные + вычисления), секвенсор, мосты и особенности выхода в L1.
Безопасность. Основные провалы происходят не из-за “не того синтаксиса”, а из-за логики: права доступа, внешние вызовы, апгрейды, оракулы и интеграции токенов. Поэтому базовые паттерны безопасности учат параллельно с языком.
(1) права доступа и роли, (2) reentrancy и порядок внешних вызовов, (3) storage layout и апгрейды (почему прокси ломаются). Это закрывает большую часть типовых уязвимостей в DeFi.
Материал носит исключительно информационный характер и не является индивидуальной инвестиционной рекомендацией (ФЗ-39). Криптовалюты не являются законным средством платежа в РФ (ФЗ-259).
12-12-2025, 22:38
16-11-2025, 21:50
26-11-2025, 17:35
17-11-2025, 21:03
16-11-2025, 22:17
Комментариев нет