Полный путь от основ Rust до уровня Senior+. 30 тем — синтаксис, владение и заимствование, трейты, конкурентность, async, unsafe, макросы, FFI и WebAssembly. Изучай последовательно или выборочно.
Синтаксис, переменные, типы данных, срезы, управляющие конструкции, cargo new/run, форматированный вывод.
02Move-семантика, Copy vs Clone, ссылки &T/&mut T, правила заимствования, стек vs куча.
03struct, enum, impl, match, if let/while let, деструктуризация, Option/Result как enum.
04Vec, HashMap, HashSet, BTreeMap/BTreeSet, VecDeque, String vs &str, срезы строк, UTF-8.
05Функции, методы, ассоциированные функции, замыкания Fn/FnMut/FnOnce, указатели на функции, higher-order functions.
06Option, Result, оператор ?, panic! vs Result, кастомные ошибки, thiserror, anyhow, From/Into для ошибок.
07Определение трейтов, default-методы, trait objects (dyn), impl Trait, associated types, supertraits, orphan rule.
08Обобщённые функции и типы, trait bounds, where-условия, мономорфизация, const generics (intro), turbofish.
09Lifetime-аннотации, elision rules, structs со ссылками, HRTB (for<'a>), variance, 'static, borrow checker и NLL.
10Модульная система (mod/use/pub), workspaces, Cargo.toml, features, semver, публикация на crates.io, build.rs.
11Трейт Iterator, IntoIterator, ленивые адаптеры (map/filter/fold), collect, кастомные итераторы, zero-cost abstraction.
12Box, Rc/Arc, RefCell/Cell, Weak, Deref/DerefMut, Drop, интерьерная изменяемость, циклы ссылок.
13std::thread, message passing через channels, Mutex/RwLock, Arc
Атомики и memory ordering, lock-free структуры, scoped threads, rayon, work-stealing, false sharing.
15async/await, Future trait, executors, tokio runtime, pinning, async в трейтах, select!, cancellation.
16#[test], integration tests, mocking, property-based testing (proptest), бенчмарки (criterion), doctest, fuzzing.
17unsafe fn/block/trait, raw pointers, UB, работа с памятью напрямую, unsafe-инварианты, FFI-основы, Miri.
18macro_rules!, гигиена макросов, derive-макросы, атрибутные и function-like proc-macro, syn/quote.
19Layout структур, стек vs куча, zero-cost abstractions, аллокаторы, profiling (perf/flamegraph), инлайнинг.
20Borrow checker и NLL, MIR, мономорфизация, vtable для dyn Trait, паника и unwinding, отсутствие GC/рантайма.
21axum/actix-web, маршрутизация, middleware, extractors, REST API, graceful shutdown, tower.
22sqlx, diesel, connection pooling, транзакции, миграции, async DB drivers, repository pattern.
23tonic и Protocol Buffers, serde (JSON/bincode/MessagePack), zero-copy сериализация, streaming.
24clap (derive API), конфигурация через config/figment, ratatui для TUI, цветной вывод, автодополнение.
25tracing/tracing-subscriber, structured logging, spans, OpenTelemetry, метрики, correlation IDs.
26Гарантии memory safety, криптография (ring/RustCrypto), secrets, cargo audit/deny, OWASP Top 10, unsafe как поверхность атаки.
27extern "C", #[repr(C)], bindgen/cbindgen, ABI-совместимость, указатели через границу FFI, безопасные обёртки.
28wasm-bindgen, wasm-pack, взаимодействие с JS, размер бинарника, wasm-opt, WASI.
29Builder, Newtype, Typestate, RAII, стратегия обработки ошибок в приложении, организация workspace-проекта.
30no_std и embedded intro, const generics (deep), GATs, специализация, unstable features, roadmap языка.