Bem-vindo ao Comprehensive Rust đŠ
Este Ă© um curso gratuito de Rust desenvolvido pela equipe do Android no Google. O curso abrange o espectro completo da linguagem, desde sintaxe bĂĄsica atĂ© tĂłpicos avançados como âgenericsâ e tratamento de erros.
O objetivo do curso Ă© ensinar Rust a vocĂȘ. NĂłs assumimos que vocĂȘ nĂŁo saiba nada sobre Rust e esperamos:
- Dar a vocĂȘ uma compreensĂŁo abrangente da linguagem e da sintaxe de Rust.
- Permitir que vocĂȘ modifique programas existentes e escreva novos programas em Rust.
- Demonstrar expressÔes idiomåticas comuns de Rust.
NĂłs chamamos os trĂȘs primeiros dias do curso de Fundamentos do Rust.
Em seguida, vocĂȘ estĂĄ convidado(a) a mergulhar a fundo em um ou mais tĂłpicos especializados:
- Android: um curso de meio dia sobre a utilização de Rust no desenvolvimento para a plataforma Android (AOSP). Isto inclui interoperabilidade com C, C++ e Java.
- Bare-metal: uma aula de um dia sobre a utilização de Rust para o desenvolvimento âbare metalâ (sistema embarcado). Tanto micro-controladores quanto processadores de aplicação sĂŁo cobertos.
- ConcorrĂȘncia: uma aula de um dia inteiro sobre concorrĂȘncia em Rust. NĂłs cobrimos tanto concorrĂȘncia clĂĄssica (escalonamento preemptivo utilizando threads e mutexes) quanto concorrĂȘncia async/await (multitarefa cooperativa utilizando futures).
Fora do escopo
Rust Ă© uma linguagem extensa e nĂŁo conseguiremos cobrir tudo em poucos dias. Alguns assuntos que nĂŁo sĂŁo objetivos deste curso sĂŁo:
- Aprender a criar macros: por favor confira CapĂtulo 19.5 em Rust Book e Rust by Example para esse fim.
Premissas
O curso pressupĂ”e que vocĂȘ jĂĄ saiba programar. Rust Ă© uma linguagem de tipagem estĂĄtica e ocasionalmente faremos comparaçÔes com C e C++ para melhor explicar ou contrastar a abordagem do Rust.
Se vocĂȘ sabe programar em uma linguagem de tipagem dinĂąmica, como Python ou JavaScript, entĂŁo vocĂȘ tambĂ©m serĂĄ capaz de acompanhar.
Este Ă© um exemplo de uma nota do instrutor. NĂłs as usaremos para adicionar informaçÔes complementares aos slides. Elas podem ser tanto pontos-chave que o instrutor deve cobrir quanto respostas a perguntas tĂpicas que surgem em sala de aula.