Шаг 1
Rust и C++: что выбрать для системного кода
Rust и C++ часто сравнивают из-за системного программирования: оба подходят для быстрых программ, низкоуровневых задач, CLI, инфраструктуры и кода рядом с памятью. Но путь к…
Учебное направление
Уроки Rust: cargo, ownership, borrowing, Option, Result, struct, enum, traits, generics и CLI. Материалы выстроены от первого знакомства до практических задач и следующего уровня.
Быстрый выбор
Выберите первую задачу и переходите к инструкции.
Rust и C++ часто сравнивают из-за системного программирования: оба подходят для быстрых программ, низкоуровневых задач, CLI, инфраструктуры и кода рядом с памятью.…
В этом уроке мы сделаем маленькую CLI-утилиту на Rust. Она будет принимать аргументы командной строки, проверять команду, печатать результат или понятную ошибку.…
Traits и generics в Rust часто объясняют слишком академично. На практике их первая польза простая: trait описывает общее поведение, а generic-функция позволяет…
В этом уроке мы соберем учебную модель задачи: Task будет хранить название и статус, Status будет enum с вариантами, а impl добавит…
В этом уроке мы соберем маленькую программу учета задач: список задач положим в Vec, описание соберем через String, а количество задач по…
В Rust отсутствие значения и ошибка обычно не прячутся в null или исключение. Они выражаются через типы: Option для значения, которое может…
Маршрут обучения
Шаг 1
Rust и C++ часто сравнивают из-за системного программирования: оба подходят для быстрых программ, низкоуровневых задач, CLI, инфраструктуры и кода рядом с памятью. Но путь к…
Шаг 2
В этом уроке мы сделаем маленькую CLI-утилиту на Rust. Она будет принимать аргументы командной строки, проверять команду, печатать результат или понятную ошибку. Это хороший мини-проект…
Шаг 3
Traits и generics в Rust часто объясняют слишком академично. На практике их первая польза простая: trait описывает общее поведение, а generic-функция позволяет работать с разными…
Шаг 4
В этом уроке мы соберем учебную модель задачи: Task будет хранить название и статус, Status будет enum с вариантами, а impl добавит методы, которые делают…
Шаг 5
В этом уроке мы соберем маленькую программу учета задач: список задач положим в Vec, описание соберем через String, а количество задач по категориям посчитаем через…
Учебные дорожки
Сгруппированные материалы для последовательного изучения.
Маршрут 1
Маршрут 2
Самопроверка
Материалы рубрики
Rust и C++ часто сравнивают из-за системного программирования: оба подходят для быстрых программ, низкоуровневых задач, CLI, инфраструктуры и кода рядом с памятью. Но путь к безопасности, tooling и архитектуре у них разный В…
В этом уроке мы сделаем маленькую CLI-утилиту на Rust. Она будет принимать аргументы командной строки, проверять команду, печатать результат или понятную ошибку. Это хороший мини-проект после ownership, Result, коллекций и struct Мы не…
Traits и generics в Rust часто объясняют слишком академично. На практике их первая польза простая: trait описывает общее поведение, а generic-функция позволяет работать с разными типами, если они это поведение поддерживают В этом…
В этом уроке мы соберем учебную модель задачи: Task будет хранить название и статус, Status будет enum с вариантами, а impl добавит методы, которые делают код читаемее Это важный шаг после коллекций. Vec…
В этом уроке мы соберем маленькую программу учета задач: список задач положим в Vec, описание соберем через String, а количество задач по категориям посчитаем через HashMap Так коллекции Rust будут не справочником, а…
В Rust отсутствие значения и ошибка обычно не прячутся в null или исключение. Они выражаются через типы: Option для значения, которое может отсутствовать, и Result для операции, которая может завершиться ошибкой В этом…
Ownership в Rust лучше понимать не как теорию, а как правило владения: у значения есть владелец, владелец отвечает за время жизни значения, а передача владения может сделать старую переменную недоступной. Borrowing — это…
В этом уроке мы начнем Rust с нуля: создадим проект через cargo new, откроем src/main.rs, изменим println!, запустим cargo run и поймем, зачем Rust сразу дает проектную структуру, а не просто один файл…