Microsoft выложила практический гайд Rust: Patterns & Engineering How-Tos - не для тех, кто только открыл
println!, а для разработчиков, которые уже упёрлись в реальные production-вопросы.Что внутри:
- type-state и newtype для безопасного дизайна API
- PhantomData для lifetime branding, variance и zero-cost типизации
- channels, actors и concurrency-паттерны
- async pitfalls, где Rust чаще всего ломает ожидания новичков
- error handling через
thiserror и anyhow- тестирование через unit, integration, doc tests и
proptest- benchmarking через
criterionЭто особенно полезно для тех, кто приходит из C++, C# или Go и внезапно понимает, что borrow checker - это не главный враг. Главная сложность в Rust - выбрать правильную форму абстракции до того, как код превратится в набор lifetime-костылей.
Если вы уже прошли Rust Book, но всё ещё зависаете на generics, trait bounds, PhantomData, async и тестировании, это очень хороший следующий шаг.
https://microsoft.github.io/RustTraining/rust-patterns-book/
#rust #rustlang
