Tratamento de erros em Rust com thiserror e anyhow
Utilize thiserror para definir tipos de erro claros em sua biblioteca, anyhow para agrupar erros e adicionar contexto na aplicação, e combine os dois.
Utilize thiserror para definir tipos de erro claros em sua biblioteca, anyhow para agrupar erros e adicionar contexto na aplicação, e combine os dois.
Como compartilhar dados entre threads com Arc<Mutex<T>>, transmitir mensagens com canal mpsc e evitar deadlock, poisoning e outros erros comuns.
Crie uma REST API CRUD com Axum 0.8, incluindo roteamento, extractors, estado compartilhado, tratamento de erros com IntoResponse e testes de handlers sem abrir portas de rede.
Quando usar Box, Rc ou Arc em Rust: alocação de heap, compartilhamento de propriedade em uma thread e entre múltiplas threads, junto com Weak, RefCell e Mutex.
Guia de programação assíncrona em Rust com Tokio, incluindo async/await, spawn task, join!, select!, timeout, channel, spawn_blocking e como testar código async.
Guia para usar Cargo e criar projetos Rust, adicionar dependências corretamente, escrever testes e agrupar múltiplos crates em um workspace.
Como definir enum com dados, usar match, if let, let else para lidar com cada caso com segurança, além dos erros comuns ao trabalhar com enum em Rust.
Entenda closure, os três traits Fn/FnMut/FnOnce, como usar adaptadores de iterator como map, filter, collect e como escrever seu próprio iterator em Rust.
Aprenda como definir e implementar trait em Rust, usar trait bound, impl Trait, dyn Trait e evitar erros comuns como orphan rule.
Explicação sobre borrowing, borrow checker e lifetime annotation em Rust usando exemplos com Order e Customer fáceis de visualizar, com erros comuns.
Entenda o mecanismo de Ownership do Rust — como essa linguagem gerencia memória de forma segura em tempo de compilação sem necessidade de garbage collector.