Чему вы научитесь
- установите Rust, настроите редактор и соберёте первый проект;
- напишете программу, которая печатает текст и считает арифметику;
- разложите данные по переменным и типам, не пугаясь переполнения;
- соберёте логику из функций, ветвлений и трёх видов циклов;
- поработаете с Vec: перебор, накопление, поиск;
- поймёте, что такое владение: перемещение, ссылки, borrow checker;
- научитесь читать красный вывод компилятора и чинить по нему код;
- напишете шесть проектов, от калькулятора до «Игры жизни» Конвея.
О курсе
Для кого этот курс
Начальные требования
Компьютер, желание и несколько часов в неделю.
Опыт программирования не нужен, начинаем с самого начала. Из математики хватит школьной: сложение, деление с остатком, проценты. Операционная система любая, Rust одинаково спокойно ставится на Windows, macOS и Linux, и в курсе показано как.
Преподаватели курса
Как проходит обучение
Полностью в браузере. Код пишете прямо на странице урока, Stepik компилирует Rust у себя на сервере и прогоняет тесты. Результат видно через секунду. Ставить что-то себе на компьютер для этого не обязательно, хотя в начале курса мы всё равно поставим: локально работать приятнее, да и пригодится дальше.
Курс собран из коротких уроков. Каждый урок это смесь: немного теории, сразу задачи на неё, пока всё свежо. Форматов несколько: тесты с вариантами ответа, сопоставления, сборка кода из кусков и главное — задачи на программирование.
Дедлайнов нет. Темп выбираете вы, но порядок величин такой: 13 модулей, 55 уроков, 272 задачи на программирование — человеку без опыта это примерно 50 часов работы. В спринтерском режиме реально уложиться в пару недель, по пять часов в неделю выйдет месяца два с половиной. Кроме вас, это никого не волнует.
Под каждым шагом комментарии. Застряли — пишите туда, это нормально и так делают все. Чем раньше спросите, тем меньше времени потеряете на самостоятельное вкапывание.
Что вы получите
- умение написать, собрать и запустить рабочую программу на Rust;
- понимание, как устроена строгая типизация и почему компилятор придирается;
- шесть небольших законченных программ, написанных своими руками;
- привычку дробить задачу на части и читать ошибки вместо того, чтобы их бояться;
- базу, на которую дальше ложатся трейты, дженерики, обработка ошибок и async.