Сколько времени нужно, чтобы стать 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 снимает дневной лимит энергии и даёт безлимитную помощь ИИ, но ничего на этой дорожной карте его не требует.