Categoria: Rust

Rust é uma linguagem de programação moderna construída sobre três pilares: segurança de memória, desempenho e concorrência. Foi projetada para ocupar o espaço de C e C++ em sistemas onde a eficiência é crítica, eliminando ainda em tempo de compilação os erros clássicos de gerenciamento de memória — e sem precisar de coletor de lixo. O caminho oficial para começar é o livro The Rust Programming Language.

Rust

Arquitetura de tratamento de erros

Esta aula explora a arquitetura de tratamento de erros em Rust, diferenciando erros de biblioteca e de aplicação, apresentando as crates thiserror e anyhow para estruturar erros de forma ergonômica, e discutindo boas práticas para criar sistemas de erro robustos e manuteníveis.

✓ Lido
Rust

Abstrações de custo zero

Esta aula explora o conceito de abstrações de custo zero em Rust, mostrando como o compilador otimiza código de alto nível para desempenho igual ao código manual. Inclui exemplos práticos, comparação entre iteradores e loops, e uma visão geral de como inspecionar o assembly gerado.

✓ Lido
Rust

Design com traits

Nesta aula, exploramos o design de software em Rust usando traits, focando em composição sobre herança, a diferença entre traits genéricas e objetos de trait, e a importância da coesão. Inclui exemplos práticos e exercícios para consolidar o aprendizado.

✓ Lido
Rust

Padrões de mutabilidade interior

Nesta aula, exploramos os padrões de mutabilidade interior em Rust, que permitem modificar dados mesmo quando há referências imutáveis, respeitando as regras de segurança da linguagem. Abordamos as principais ferramentas: Cell, RefCell, Mutex, RwLock, OnceCell e Lazy, com exemplos práticos e critérios para escolher a mais adequada.

✓ Lido
Rust

I/O: lendo e escrevendo arquivos

Nesta aula, você aprenderá a realizar operações de leitura e escrita de arquivos em Rust usando a biblioteca padrão. Exploraremos os módulos std::fs, as traits Read e Write, os buffers BufReader e BufWriter, e as melhores práticas para tratamento de erros, com exemplos práticos e exercícios.

✓ Lido
Rust

Serialização com serde

Esta aula explora a serialização e desserialização em Rust usando a biblioteca serde, cobrindo os traits Serialize e Deserialize, o uso de serde_json, atributos de personalização e diferentes formatos de serialização, com exemplos práticos e exercícios.

✓ Lido
Rust

Banco de dados com sqlx

Nesta aula, você aprenderá a usar a biblioteca sqlx em Rust para interagir com bancos de dados de forma assíncrona. Exploraremos a criação de pools de conexões, execução de queries, mapeamento de resultados com query_as e boas práticas para aplicações async.

✓ Lido
Rust

Cliente HTTP com reqwest

Nesta aula, você aprenderá a criar clientes HTTP em Rust utilizando a biblioteca reqwest, cobrindo requisições GET e POST, programação assíncrona com async/await, serialização e desserialização de JSON, e tratamento robusto de erros. Ao final, você será capaz de integrar chamadas a APIs REST em seus projetos Rust com segurança e eficiência.

✓ Lido
Rust

Servidor web com axum (introdução)

Nesta aula, você aprenderá a criar um servidor web básico com o framework axum em Rust, explorando os conceitos de rotas, handlers, extractors e respostas. O conteúdo inclui exemplos práticos, boas práticas e exercícios para fixar o aprendizado.

✓ Lido