Minha jornada aprendendo Rust
Os desafios e aprendizados de migrar de Python para Rust em projetos pessoais.
experiência6 min2024-10-28
#rust#programação#aprendizado
Minha jornada aprendendo Rust
Depois de anos programando em Python, decidi aprender Rust. Aqui está minha experiência.
Por que Rust?
- **Performance**: Tão rápido quanto C/C++
- **Segurança**: O borrow checker previne bugs de memória
- **Modernidade**: Tooling excelente (cargo, rustfmt, clippy)
Os desafios
O Borrow Checker
O maior desafio foi entender ownership e borrowing:
fn main() {
let s1 = String::from("hello");
let s2 = s1; // s1 foi movido!
// println!("{}", s1); // ERRO!
println!("{}", s2); // OK
}Lifetimes
Lifetimes foram confusos no início, mas fazem sentido depois:
fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
if x.len() > y.len() { x } else { y }
}O que construí
- **CLI para gerenciar dotfiles** - Meu primeiro projeto real
- **API REST com Actix** - Performance incrível
- **Contribuições open source** - Pequenos PRs para praticar
Recursos que recomendo
- The Rust Book (oficial e gratuito)
- Rustlings (exercícios práticos)
- Rust by Example
Conclusão
Rust tem uma curva de aprendizado íngreme, mas as garantias de segurança e performance valem o esforço.