Menu
Coddy logo textTech
Путь обучения

Roadmap Rust-разработчика

Что учить и в каком порядке, чтобы работать Rust-разработчиком: язык вплоть до владения, заимствования, Result, дженериков и трейтов, командная строка, Git и SQL, затем структуры данных и алгоритмы, написанные под контролем borrow checker, и код, который команда сможет поддерживать. Приготовьтесь к тому, что первый месяц дастся тяжелее, чем в большинстве языков. Бесплатно, на практике, прямо в браузере.

224,228+ codders записались на эти курсы

582 уроков470 задачи2,447 вопросов квиза

Дорожная карта Rust-разработчика, шаг за шагом

17 курсов6 разделов582 уроков470 задачи2,447 вопросов квиза

Каждый шаг состоит из уже существующих курсов Coddy, и каждая кнопка «Начать» открывает их на Rust. Проходите шаги по порядку или начните с того, которого вам не хватает: прогресс сохраняется по каждому курсу отдельно.

  1. 1
    Начать этот шагНачатьТри раздела. Раздел «Основы» охватывает переменные и изменяемость, затенение, match, циклы, функции, массивы и изменяемые ссылки; «Логика и управление потоком» разбирает векторы, структуры, хеш-карты, Option, Result и оператор ?, срезы строк и замыкания; «Объектно-ориентированное программирование» показывает, что это значит в Rust (методы структур, модули и приватность, перечисления с данными, дженерики, трейты, ограничения трейтов и трейт-объекты), а также паттерны вроде newtype и пары From и Into. Владение и заимствование проходят через все три раздела, и в них главная сложность: компилятор отвергает код, который другие языки запустили бы. Изучите их глубоко; от них зависит каждый следующий шаг.НачатьСвоя страница
  2. 2
    Начать этот шагНачатьФайлы и пути, подстановочные символы, grep, пайпы и перенаправление, права доступа, переменные окружения и shell-скрипты. Разработка на Rust идёт в терминале: cargo build, cargo test и cargo clippy выполняются как команды, ошибки компилятора читаются в консоли, а у Rust сильная традиция консольных утилит, среди которых и ripgrep. RUST_BACKTRACE и RUST_LOG, скорее всего, станут первыми переменными окружения, которые вы зададите.НачатьСвоя страница
  3. 3
    Начать этот шагНачатьПодготовка изменений (staging), коммиты, .gitignore, ветки, слияния и конфликты, отмена ошибок и удалённые репозитории. Любой проект на Rust начинается внутри Git: cargo new инициализирует репозиторий и сам добавляет target/ в игнор. Крейты на crates.io ссылаются на свои репозитории, и чтобы внести вклад в один из них, нужны ветки, коммиты и пул-реквест.НачатьСвоя страница
  4. 4
    Начать этот шагНачатьФильтрация, сортировка, соединения, группировка, агрегатные функции, подзапросы, конструкции WITH и оконные функции на настоящих таблицах. Бэкенды на Rust работают с базами данных через крейты вроде sqlx, который умеет проверять ваши запросы по настоящей базе ещё на этапе компиляции, или ORM Diesel; в любом случае компилятор помогает только тогда, когда сам запрос написан правильно.НачатьСвоя страница
  5. 5
    Начать этот шагНачатьСтек, очередь, связный список, двоичное дерево и хеш-таблица: каждую структуру вы пишете на Rust с нуля, а затем применяете в задачах. Vec уже неплохо работает как стек, а VecDeque как очередь, но связный список остаётся классическим местом, где правила Rust кусаются: каждый узел владеет следующим через Option<Box<Node>>, а borrow checker спрашивает, кто вправе его изменить. Самый быстрый способ сделать владение конкретным: написать эти структуры самому.Начать
  6. 6
    Начать этот шагНачатьЗадачи на рекурсию, затем сортировка пузырьком, выбором, вставками, слиянием и быстрая сортировка на Rust, с анимацией сортировок в визуализаторе алгоритмов Coddy. Сортировка на месте становится практикой заимствования: быстрая сортировка разбивает &mut [T], а чтобы разделить один срез на два для рекурсии, существует split_at_mut. После этого пара методов из стандартной библиотеки обретает смысл: sort сортирует устойчиво, а sort_unstable нет и обычно работает быстрее.Начать
  7. 7
    Начать этот шагНачатьОбъектно-ориентированный проект, собранный от начала до конца, и банк задач по программированию, оба на Rust. rustfmt и clippy берут на себя форматирование и многие проверки линтера; имена, размер функций и границы модулей остаются за вами, и именно их комментируют ревьюеры на Rust.Начать
Что вы получаете
Всё, что вам нужно, чтобы научиться программировать

Learn by Doing

Write real code, query databases, build websites, and master AI prompts. Our interactive lessons cover every skill modern developers need.

playground.js
Code Editor
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Test #1test Case Success icon
Test #2test Case Success icon
Test #3test Case Failure icon
Input
"Alex"
Output
"Hello, Coddy! Alex"

Build Your Coding Streak

Stay consistent and watch your progress grow! Track your daily coding habit, protect your streak with freeze days, and earn rewards for showing up every day.

12 days streak

Return tomorrow to keep your streak!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

Double or Nothing

Day 5 of 7

fire Freeze icon

Streak Freeze

2 left

Code Anywhere, Anytime

Take your coding journey on the go! No setup, no downloads - just open and start coding. Available on iOS, Android and Web with 4.9 star ratings.

Python
7Streak
250Score
5Energy
Variables
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
CONTINUE
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
Journey
Goals
Leaderboard
Profile
4.9
StarStarStarStarStar
Rating

You're Not Alone in This

Compete on global leaderboards, invite friends to earn rewards, and celebrate each other's wins. Coding is better with friends!

Challenger League
Challenger LeagueTop 7 advance
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconPromotion zoneleaderboard Arrow Up icon

Every way to learn

Read, listen, test yourself, ask the AI, or look up anything you've already covered. Every lesson meets you where you are.

Intro to Variables
Audio

A variable is a named container that stores a value you can reference later in your program.

In Python, you create one by writing the name, an equals sign, then the value you want to store.

The value can change over time - reassigning the name simply points it to a new value.

1xSarah

Prove Your Skills

Earn certificates for every course you complete. Add them to your LinkedIn profile and resume to showcase your coding expertise to employers.

CoddyCertificate of Completion
This certifies thatJohn Doehas successfully completed
python iconPython Fundamentals
Verified
DateJan 2026
LinkedInAdd to LinkedIn

Почему стоит пройти эту дорожную карту по Rust на Coddy

  • Rust выбирают там, где важны и скорость, и безопасность. Системное ПО, сети и инфраструктура, консольные утилиты, встраиваемые устройства, WebAssembly и код, чувствительный к безопасности: вот где вакансии на Rust, потому что по производительности он сопоставим с C и C++, а его компилятор исключает целые классы ошибок памяти.
  • Честный первый месяц. Из-за владения и заимствования начинать с Rust медленнее, чем с большинством языков, поэтому курс проходит их маленькими шагами: ссылки, срезы, String против &str и Clone против Copy, а рядом Option, Result, структуры, перечисления и трейты, пока отказы компилятора не начнут читаться как обоснования.
  • Структуры данных под контролем borrow checker. На связном списке или двоичном дереве владение перестаёт быть теорией, и на этой дорожной карте вы пишете на Rust стек, очередь, связный список, двоичное дерево и хеш-таблицу, а затем решаете задачи на рекурсию и пишете пять сортировок.
  • Автопроверка, подсказки и никакой установки. Каждый урок заканчивается задачей на Rust, которую проверяют тесты; когда компилятор или тест говорит «нет», Bugsy подсказывает путь к исправлению, не выписывая его. Большинство курсов заканчиваются бесплатным сертификатом, и не нужно настраивать ни rustup, ни Cargo: всё работает в браузере.

Частые вопросы о том, как стать Rust-разработчиком

Сколько времени нужно, чтобы стать Rust-разработчиком?

Если Rust у вас первый язык, реалистичный срок до junior-собеседования составляет от девяти до пятнадцати месяцев примерно по часу в день, и большая часть лишнего времени уходит на то, чтобы свободно освоить владение. Разработчикам, которые уже знают C++ или другой типизированный язык, часто хватает нескольких месяцев. На этой дорожной карте курс Rust занимает шесть-восемь недель уроков, хотя к владению обычно привыкают дольше; командная строка, Git и SQL вместе около месяца, а шаги по структурам данных и сортировкам ещё два-три.

Подходит ли Rust как первый язык для разработчика ПО?

Может подойти, если вы терпеливы и целитесь в системное программирование. Rust с первой недели заставляет думать о памяти, типах и ошибках, и это ценно, но медленно. Многим лучше подойдёт сначала Python или Go, а Rust вторым, и эта дорожная карта есть на обоих языках; если же вам нужна именно работа на Rust, начинать с него разумно, потому что его ошибки компиляции оказываются необычайно хорошими учителями.

Что ещё, кроме Rust, нужно знать Rust-разработчику?

Командную строку, Git и SQL, которые охватывает эта дорожная карта, затем Cargo и экосистему крейтов, асинхронный Rust с Tokio для сетевых сервисов и предметную область, в которую вы целитесь: веб-фреймворк вроде Axum для бэкенда, встраиваемое железо или WebAssembly в браузере. Умение читать C тоже помогает, потому что много работы на Rust ведётся рядом с существующим кодом на C и C++.

Нужно ли учить C++ перед Rust?

Нет, хотя это помогает. Rust задуман так, чтобы его можно было учить напрямую, а его компилятор сам учит правилам работы с памятью, которые C++ оставляет на дисциплину разработчика. Если вы знаете C++, владение покажется теми самыми правилами, которым вы и так стараетесь следовать, только ставшими обязательными; если не знаете, начните с Rust, а C++ возьмите позже, когда он понадобится для работы. Эта дорожная карта есть и на C++.

Какой курс этой дорожной карты не преподаётся на Rust?

Один: курс по чистому коду пока преподаётся только на Python, поэтому он указан после шагов, а не на седьмом шаге. Его принципы применимы к Rust как есть, а механическую часть берут на себя инструменты Rust: rustfmt отвечает за оформление, clippy за типичные ошибки и неидиоматичный код. Все шаги, включая объектно-ориентированный проект и задачи по программированию, проходят на Rust.

Эта дорожная карта по Rust бесплатная?

Да. Все курсы на ней бесплатны: уроки, редактор Rust и терминал Linux в браузере, задачи с проверкой по тестам, подсказки Bugsy и сертификаты. Pro снимает дневной лимит энергии и даёт безлимитную помощь ИИ, но ничего на этой дорожной карте его не требует.

Другие пути обучения

Те же курсы, выстроенные под другую роль. Прогресс сохраняется: курс, пройденный на одном пути, засчитывается на каждом пути, куда он входит.

Все пути обучения
Coddy programming languages illustration

Начните путь Разработчик ПО бесплатно

Начать учиться