Содержание курса
1. Система типов и лайфтаймы
4 урока
61
13
9м
0
Открытый
1.1
Лайфтаймы как параметр типа
↗
40
7
2м 16с
0
Открытый
1.2
Variance и подтипирование
↗
11
2
7м 0с
0
Открытый
1.3
PhantomData и type-state
↗
5
2
-
0
Открытый
1.4
Self-referential структуры и Pin
↗
5
2
-
0
2. Трейты, дженерики и HRTB
4 урока
17
8
0м
0
Открытый
2.1
Объектная безопасность и dyn Trait
↗
5
2
-
0
Открытый
2.2
HRTB: квантор по лайфтаймам
↗
6
2
-
0
Открытый
2.3
Ассоциированные типы, дженерики и GAT
↗
3
2
-
0
Открытый
2.4
Orphan rule, newtype и sealed-трейты
↗
3
2
-
0
3. Async Rust изнутри
4 урока
13
4
0м
0
Открытый
3.1
Future, Pin и Unpin
↗
5
1
-
0
Открытый
3.2
Waker и executor
↗
2
1
-
0
Открытый
3.3
Реактор и асинхронный I/O
↗
3
1
-
0
Открытый
3.4
Stream, Sink и backpressure
↗
3
1
-
0
4. Многопоточность и lock-free
4 урока
5
4
0м
0
Открытый
4.1
Atomic и memory ordering
↗
1
1
-
0
Открытый
4.2
Mutex и RwLock внутри
↗
1
1
-
0
Открытый
4.3
Lock-free и CAS-циклы
↗
1
1
-
0
Открытый
4.4
Каналы: mpsc, broadcast, watch, oneshot
↗
2
1
-
0
5. Unsafe Rust и FFI
4 урока
6
4
0м
0
Открытый
5.1
Unsafe и сырые указатели
↗
2
1
-
0
Открытый
5.2
Undefined Behavior и инструменты
↗
1
1
-
0
Открытый
5.3
FFI с C: bindgen и cbindgen
↗
2
1
-
0
Открытый
5.4
MaybeUninit и работа с неинициализированной памятью
↗
1
1
-
0
6. Производительность и профилирование
4 урока
4
4
0м
0
Открытый
6.1
Бенчмарки с criterion
↗
1
1
-
0
Открытый
6.2
Профилирование: perf, flamegraph, samply
↗
1
1
-
0
Открытый
6.3
SIMD, кэш и расположение данных
↗
1
1
-
0
Открытый
6.4
Аллокаторы, арены и SmallVec
↗
1
1
-
0
7. Макросы и метапрограммирование
4 урока
4
4
0м
0
Открытый
7.1
Декларативные макросы macro_rules!
↗
1
1
-
0
Открытый
7.2
Процедурные макросы: syn и quote
↗
1
1
-
0
Открытый
7.3
Derive-макросы и атрибуты
↗
1
1
-
0
Открытый
7.4
Дизайн API: ошибки, builder и features
↗
1
1
-
0
8. no_std, embedded и распределённые системы
4 урока
5
4
0м
0
Открытый
8.1
no_std и embedded
↗
1
1
-
0
Открытый
8.2
Сериализация и сетевые протоколы
↗
1
1
-
0
Открытый
8.3
Распределённый счётчик и CRDT
↗
1
1
-
0
Открытый
8.4
WebAssembly: wasm-bindgen, WASI, components
↗
2
1
-
0
9. Практика: пишем lock-free кэш и async-парсер
4 урока
5
3
0м
0
Открытый
9.1
Проектирование lock-free кэша
↗
2
1
-
0
Открытый
9.2
Практика: реализация кэша по шагам
↗
1
1
-
0
Открытый
9.3
Async-парсер бинарного протокола
↗
1
1
-
0
Открытый
9.4
Практика: JSON-команды и shutdown
↗
1
0
-
0
10. Финальный проект: распределённый key-value
4 урока
4
0
0м
0
Открытый
10.1
Архитектура распределённого KV-store
↗
1
0
-
0
Открытый
10.2
WAL и восстановление состояния
↗
1
0
-
0
Открытый
10.3
Gossip и членство в кластере
↗
1
0
-
0
Открытый
10.4
Практика: репликация, метрики и тесты
↗
1
0
-
0
11. Веб-сервисы на Rust: axum и tower
4 урока
11
0
0м
0
Открытый
11.1
axum: маршруты, экстракторы, state
↗
4
0
-
0
Открытый
11.2
Tower: Service, Layer, ServiceBuilder
↗
2
0
-
0
Открытый
11.3
WebSocket, SSE и долгие соединения
↗
3
0
-
0
Открытый
11.4
Практика: REST и WebSocket-чат
↗
2
0
-
0
12. Базы данных: sqlx, sea-orm, миграции
4 урока
5
0
0м
0
Открытый
12.1
sqlx: пулы, запросы, транзакции
↗
1
0
-
0
Открытый
12.2
sea-orm: модели, связи, builder
↗
2
0
-
0
Открытый
12.3
Миграции и эволюция схемы
↗
1
0
-
0
Открытый
12.4
Практика: репозиторий и миграции
↗
1
0
-
0
13. Безопасность сервисов на Rust
4 урока
5
0
0м
0
Открытый
13.1
TLS в Rust: rustls и mTLS
↗
1
0
-
0
Открытый
13.2
Аутентификация: argon2, JWT, OAuth2
↗
1
0
-
0
Открытый
13.3
Secrets, zeroize и защита логов
↗
2
0
-
0
Открытый
13.4
Практика: безопасный auth-сервис
↗
1
0
-
0
14. Тестирование, fuzz и property-based
4 урока
4
0
0м
0
Открытый
14.1
Уровни тестирования: unit, integration, doc, snapshot
↗
1
0
-
0
Открытый
14.2
Property-based: proptest и quickcheck
↗
1
0
-
0
Открытый
14.3
Fuzz: cargo-fuzz и arbitrary
↗
1
0
-
0
Открытый
14.4
Практика: полный тест-сюит для парсера
↗
1
0
-
0
15. DevOps и поставка Rust-сервисов
4 урока
4
0
0м
0
Открытый
15.1
CI для Rust: GitHub Actions, audit, MSRV
↗
1
0
-
0
Открытый
15.2
Docker: multi-stage, distroless, cargo-chef
↗
1
0
-
0
Открытый
15.3
Observability: tracing, метрики, OpenTelemetry
↗
1
0
-
0
Открытый
15.4
Практика: релизный пайплайн
↗
1
0
-
0
16. gRPC и Protocol Buffers на Rust
4 урока
8
0
0м
0
Открытый
16.1
gRPC на Rust: tonic, prost и сгенерированный код
↗
4
0
-
0
Открытый
16.2
Стриминг в gRPC: четыре режима и backpressure
↗
2
0
-
0
Открытый
16.3
Interceptor, metadata и сквозная авторизация в gRPC
↗
1
0
-
0
Открытый
16.4
Практика: end-to-end gRPC-сервис заказов с health и retry
↗
1
0
-
0
17. Очереди сообщений и event-driven архитектуры
4 урока
5
0
0м
0
Открытый
17.1
Kafka на Rust: producer, consumer и гарантии доставки
↗
1
0
-
0
Открытый
17.2
NATS, JetStream и pull/push consumers
↗
2
0
-
0
Открытый
17.3
Event-driven паттерны: outbox, saga, CQRS
↗
1
0
-
0
Открытый
17.4
Практика: payment-saga с outbox и Kafka
↗
1
0
-
0
18. Observability: tracing, метрики, OpenTelemetry
4 урока
5
0
0м
0
Открытый
18.1
tracing: spans, instrument и subscriber
↗
2
0
-
0
Открытый
18.2
Метрики, RED/USE и выбор бакетов histogram
↗
1
0
-
0
Открытый
18.3
OpenTelemetry: traces, propagation и sampling
↗
1
0
-
0
Открытый
18.4
Практика: observability-шаблон для axum-сервиса
↗
1
0
-
0
19. WebAssembly: wasm-bindgen, wasmtime, WASI
4 урока
4
0
0м
0
Открытый
19.1
Rust в браузере: wasm-bindgen, web-sys и wasm-pack
↗
1
0
-
0
Открытый
19.2
WASI, wasmtime и component model
↗
1
0
-
0
Открытый
19.3
Плагины на wasm: Linker, fuel и ResourceLimiter
↗
1
0
-
0
Открытый
19.4
Практика: цепочка wasm-плагинов с лимитами и DLQ
↗
1
0
-
0
20. Системное программирование: io_uring, eBPF, драйверы
4 урока
5
0
0м
0
Открытый
20.1
io_uring: пакетный асинхронный I/O в Linux
↗
2
0
-
0
Открытый
20.2
eBPF на Rust: aya, maps и ограничения verifier
↗
1
0
-
0
Открытый
20.3
Rust в ядре Linux: модули, Pin и безопасные обёртки
↗
1
0
-
0
Открытый
20.4
Практика: io_uring-эхо, eBPF-трейсер и misc-driver
↗
1
0
-
0
21. Большая практика: production-ready feed-сервис
4 урока
6
0
0м
0
Открытый
21.1
Занятие 1. Домен, API и обработка ошибок
↗
3
0
-
0
Открытый
21.2
Занятие 2. Persistence, миграции и Redis-кеш
↗
1
0
-
0
Открытый
21.3
Занятие 3. Outbox, Kafka и идемпотентные обработчики
↗
1
0
-
0
Открытый
21.4
Занятие 4. Тесты, нагрузочное и канареечный релиз
↗
1
0
-
0
22. Компиляторы и языки на Rust: от парсера до JIT
4 урока
6
0
0м
0
Открытый
22.1
Лексер, парсер и AST на Rust
↗
2
0
-
0
Открытый
22.2
Name resolution, type checking и borrow rules
↗
2
0
-
0
Открытый
22.3
IR, SSA и кодогенерация: LLVM и Cranelift
↗
1
0
-
0
Открытый
22.4
Практика: мини-язык от парсера до JIT-исполнения
↗
1
0
-
0
23. Полезные источники: книги, RFC, доклады и репозитории
4 урока
11
11
0м
0
Открытый
23.1
Книги: фундаментальное чтение
↗
4
4
-
0
Открытый
23.2
RFC, блоги и официальные источники
↗
2
2
-
0
Открытый
23.3
Доклады, видео и подкасты
↗
2
2
-
0
Открытый
23.4
Репозитории и куда идти дальше
↗
3
3
-
0