Что нужно знать перед началом
Правильная подготовка экономит десятки часов в процессе обучения. Подобно тому, как строитель сначала проверяет фундамент перед возведением стен, разработчику важно убедиться, что базовые знания на месте. Без понимания основ криптографии и программирования материал по смарт-контрактам будет казаться непреодолимо сложным.
Прежде чем приступить к изучению экосистемы TON, убедитесь, что у вас есть базовые знания в нескольких областях. Этот урок поможет определить вашу готовность и подскажет, где восполнить пробелы.
Базовые концепции блокчейна
Для успешного прохождения курса вам необходимо понимать основные концепции:
Что такое блокчейн
- Блоки и цепочки — как данные организованы в блоки и связаны криптографическими хешами
- Транзакции — как записываются и подтверждаются операции в сети
- Консенсус — зачем нужны механизмы согласования и как они работают (PoW, PoS)
- Децентрализация — почему блокчейн не контролируется одним участником
Эти темы подробно рассмотрены в курсе Crypto Fundamentals (модули M01-M03):
Хеш-функции: свойства и применение в блокчейнеЕсли вы новичок в блокчейне, рекомендуем сначала пройти курс Crypto Fundamentals — он даст прочную основу для понимания TON.
Криптография
Вам не нужно быть экспертом в криптографии, но полезно знать:
- Что такое хеш-функция и зачем она нужна
- Как работают публичные и приватные ключи
- Что такое цифровая подпись и зачем она используется
Знание Ethereum (желательно, но не обязательно)
TON во многом отличается от Ethereum, но знакомство с Ethereum поможет быстрее понять некоторые концепции:
- Смарт-контракты — что это и зачем они нужны
- Газ и комиссии — как оплачиваются вычисления в блокчейне
- EVM — общее представление о виртуальных машинах блокчейна
Если вы знакомы с Ethereum, вам будет проще понять, чем TON от него отличается (а отличий немало!).
Архитектура EthereumЕсли вы не знакомы с Ethereum — не переживайте. Курс объясняет все концепции TON с нуля, без привязки к другим блокчейнам.
Основы программирования
Для модулей по смарт-контрактам (M03-M04) вам понадобятся базовые навыки программирования:
- Переменные и типы данных — числа, строки, булевы значения
- Функции — определение, вызов, параметры и возвращаемые значения
- Условия и циклы — if/else, for, while
- Структуры данных — массивы, словари (map/dictionary)
Опыт с любым языком программирования (JavaScript, Python, C++, Java) будет достаточным. Язык Tact имеет синтаксис, похожий на TypeScript/Swift, и легко осваивается.
Командная строка
Для работы с инструментами разработки (Blueprint, npm) полезно уметь:
- Открывать терминал и выполнять команды
- Устанавливать пакеты через npm
- Навигировать по файловой системе
Чек-лист готовности
Оцените свою готовность к курсу:
| Область | Минимум | Идеально |
|---|---|---|
| Блокчейн | Понимание блоков и транзакций | Опыт с любым блокчейном |
| Криптография | Знание хешей и ключей | Понимание подписей и шифрования |
| Программирование | Переменные, функции, циклы | Опыт с TypeScript/Swift |
| Ethereum | Не требуется | Опыт написания смарт-контрактов |
| Командная строка | Базовые команды | Опыт с npm/Node.js |
Что если я не готов?
Не волнуйтесь! Вот план действий:
- Нет знаний о блокчейне? Пройдите курс Crypto Fundamentals (модули M01-M03)
- Нет опыта программирования? Начните с любого бесплатного курса по JavaScript или Python
- Все есть, но нет опыта с Ethereum? Отлично, он не обязателен — начинайте курс прямо сейчас!
Частые ошибки
- Пропускают основы криптографии (хеши, ключи, подписи) и потом не понимают, как формируются адреса контрактов и верифицируются транзакции.
- Начинают курс без опыта программирования, надеясь освоить язык Tact «по ходу», что приводит к путанице между синтаксисом языка и логикой блокчейна.
- Считают, что знание Ethereum обязательно, и тратят время на изучение Solidity вместо того, чтобы сразу погрузиться в TON.
- Не устанавливают заранее Node.js и npm, из-за чего застревают на первых же практических уроках по Blueprint.