Estrutura do Curso
Esta página é para o instrutor do curso.
Fundamentos do Rust
Os primeiros quatro dias compõem os Fundamentos do Rust. Os dias são rápidos e cobrimos bastante counteúdo!
Agenda do curso:
- Dia 1 Manhã (2 horas e 5 minutos, incluindo intervalos)
Segment | Duration |
---|---|
Bem-vindos | 5 minutes |
Olá, Mundo | 15 minutes |
Tipos e Valores | 40 minutes |
Fundamentos de Controle de Fluxo | 40 minutes |
- Dia 1 Tarde (2 horas e 35 minutos, incluindo intervalos)
Segment | Duration |
---|---|
Tuplas e Matrizes | 35 minutes |
Referências | 55 minutes |
Tipos Definidos pelo Usuário | 50 minutes |
- Dia 2 Manhã (2 horas and 10 minutos, incluindo intervalos)
Segment | Duration |
---|---|
Bem-vindos | 3 minutes |
Correspondência de Padrões | 1 hour |
Métodos e Traits | 50 minutes |
- Dia 2 Tarde (3 horas e 15 minutos, incluindo intervalos)
Segment | Duration |
---|---|
Genéricos (Generics) | 45 minutes |
Tipos da Biblioteca Padrão | 1 hour |
Traits da Biblioteca Padrão | 1 hour and 10 minutes |
- Dia 3 Manhã (2 horas and 20 minutos, incluindo intervalos)
Segment | Duration |
---|---|
Bem-vindos | 3 minutes |
Gerenciamento de Memória | 1 hour |
Ponteiros Inteligentes (Smart Pointers) | 55 minutes |
- Dia 3 Tarde (1 hora and 55 minutos, incluindo intervalos)
Segment | Duration |
---|---|
Empréstimo (Borrowing) | 55 minutes |
Tempos de Vida (Lifetimes) | 50 minutes |
- Dia 4 Manhã (2 horas and 40 minutos, incluindo intervalos)
Segment | Duration |
---|---|
Bem-vindos | 3 minutes |
Iteradores | 45 minutes |
Módulos | 40 minutes |
Testes | 45 minutes |
- Dia 4 Tarde (2 horas and 15 minutos, incluindo intervalos)
Segment | Duration |
---|---|
Tratamento de Erros | 1 hour |
Rust Inseguro (Unsafe) | 1 hour and 5 minutes |
Análises Detalhadas
Além do curso de 4 dias sobre Fundamentos de Rust, nós abordamos alguns tópicos mais especializados:
Rust para Android
O Rust para Android é um curso de meio dia sobre o uso de Rust para o desenvolvimento na plataforma Android. Isso inclui interoperabilidade com C, C++ e Java.
Você precisará de um checkout do AOSP. Faça um checkout do repositório do curso no mesmo computador e mova o diretório src/android/
para a raiz do seu checkout do AOSP. Isso garantirá que o sistema de compilação do Android veja os arquivos Android.bp
em src/android/
.
Certifique-se de que adb sync
funcione com seu emulador ou dispositivo físico e pré-compile todos os exemplos do Android usando src/android/build_all.sh
. Leia o roteiro para ver os comandos executados e verifique se eles funcionam quando você os executa manualmente.
Rust para Chromium
O Rust para Chromium é um curso de meio dia sobre o uso de Rust como parte do navegador Chromium. Ele inclui o uso de Rust no sistema de compilação gn
do Chromium, a inclusão de bibliotecas de terceiros (“crates”) e interoperabilidade com C++.
Você precisará ser capaz de compilar o Chromium — uma compilação de componentes de depuração é recomendada para velocidade, mas qualquer compilação funcionará. Certifique-se de que você possa executar o navegador Chromium que você compilou.
Rust Bare-Metal
O Rust Bare-Metal é uma aula de um dia inteiro sobre o uso de Rust para o desenvolvimento bare-metal (sistema embarcado). Tanto micro-controladores quanto processadores de aplicação são cobertos.
Para a parte do micro-controlador, você precisará comprar a placa de desenvolvimento BBC micro:bit v2 com antecedência. Todos precisarão instalar vários pacotes, conforme descrito na página inicial.
Concorrência em Rust
Concorrência em Rust é uma aula de um dia sobre concorrência clássica e concorrência async
/await
.
Você precisará de um novo crate configurado e as dependências baixadas e prontas para uso. Você pode então copiar/colar os exemplos para src/main.rs
para experimentá-los:
cargo init concurrency
cd concurrency
cargo add tokio --features full
cargo run
Agenda do curso:
- Morning (3 hours and 20 minutes, including breaks)
Segment | Duration |
---|---|
Threads | 30 minutes |
Canais (Channels) | 20 minutes |
Send e Sync | 15 minutes |
Estado Compartilhado | 30 minutes |
Exercícios | 1 hour and 10 minutes |
- Afternoon (3 hours and 20 minutes, including breaks)
Segment | Duration |
---|---|
Fundamentos de Async (Assincronicidade) | 30 minutes |
Canais e Controle de Fluxo | 20 minutes |
Armadilhas | 55 minutes |
Exercícios | 1 hour and 10 minutes |
Formato
O curso foi projetado para ser bastante interativo e recomendamos deixar as perguntas conduzirem a exploração do Rust!