Este repositório é destinado ao aprendizado da linguagem de programação Rust. Rust é uma linguagem de programação multiparadigma compilada desenvolvida pela Mozilla Research. É projetada para ser "segura, concorrente e prática", mas diferente de outras linguagens seguras, Rust não usa coletor de lixo. Possui suporte nativo ao WebAssembly e está se expandindo para diversas outras áreas ligadas à industria 4.0. Não deixe de aprender! Ao final dos 30 dias, o objetivo é que você possua um nível bom na linguaguem de programação - apto a entender projetos mais complexos. É importante ressaltar que, com base no material disponbilizado deste minicurso, ainda há uma grande parcela não citada de informações que são de suma importância para programadores que desejam se especializar ainda mais em Rust. Nesse sentido, recomendamos os materiais criados por Steve Klabnik, Carol Nichols e a comunidade Rust em Aprender Rust.
Muito obrigado por acompanhar esse projeto!!! Sugerimos de um a dois Hands-On por dia durante 30 dias.
HANDS-ON | LINK | NÍVEL | STATUS |
---|---|---|---|
1 | Conhecendo o Rust | ESSENCIAL | ✔️ |
2 | Hello World, Hello Cargo | ESSENCIAL | ✔️ |
3 | Variáveis, Mutabilidade e Data Types | ESSENCIAL | ✔️ |
4 | Funções | ESSENCIAL | ✔️ |
5 | Comentários e Controle de Fluxo | ESSENCIAL | ✔️ |
6 | APLICAÇÕES UNIDADE 01 | ESSENCIAL | ✔️ |
7 | Ownership | ESSENCIAL | ✔️ |
8 | Referencias e Empréstimos | ESSENCIAL | ✔️ |
9 | Slices | ESSENCIAL | ✔️ |
10 | Structs - parte 01 | ESSENCIAL | ✔️ |
11 | Structs - parte 02 | ESSENCIAL | ✔️ |
12 | APLICAÇÕES UNIDADE 02 | BÁSICO | ✔️ |
13 | Enums | BÁSICO | ✔️ |
14 | Matchs | BÁSICO | ✔️ |
15 | Módulos - parte 1 | BÁSICO | ✔️ |
16 | Módulos - parte 2 | BÁSICO | ✔️ |
17 | APLICAÇÕES UNIDADE 03 | BÁSICO | ✔️ |
18 | Vetores | BÁSICO | ✔️ |
19 | Strings | BÁSICO | ✔️ |
20 | Maps | BÁSICO | ✔️ |
21 | APLICAÇÕES UNIDADE 04 | BÁSICO | ✔️ |
22 | Tratamento de erros 01 | INTERMEDIÁRIO | ✔️ |
23 | Tratamento de erros 02 | INTERMEDIÁRIO | 🚧 |
24 | Lidando com testes 01 | INTERMEDIÁRIO | 🏗️ |
25 | Lidando com testes 02 | INTERMEDIÁRIO | 🏗️ |
26 | APLICAÇÕES UNIDADE 05 | INTERMEDIÁRIO | 🏗️ |
27 | Tipos Genéricos | INTERMEDIÁRIO | ✔️ |
28 | Traits | AVANÇADO | ✔️ |
29 | Lifetimes | AVANÇADO | ✔️ |
30 | Closures | AVANÇADO | ✔️ |
31 | Iterators | AVANÇADO | ✔️ |
32 | Lidando com arquivos | AVANÇADO | ✔️ |
PROJETOS | LINK |
---|---|
CRIANDO LIVROS COM RUST | Criando um web book com mdbook |
EXERCÍCIOS DE RUST COM CODEWARS | Praticando rust com ganho de pontos em codewars |
FRAMEWORKWEB PARA CRIAÇÃO DE SITES | Criando sites a partir do framework Rocket |
BOT DO TELEGRAM | Utilizando teloxide para programar um bot no telegram |
INTEGRANDO PYTHON E RUST | Utilizando PyO3 para dar um boost em seu código python |
COLEÇÃO DE ALGORITMOS EM RUST | Conheça diversos algoritmos em Rust com TheAlgorithms |
RUST LANG ❤️: 99%
HANDS-ON: 78%
CORREÇÃO DE BUGS: 0%
NOVAS DISCUSSÕES: 0%
Para realizar o download de Rust, acesse: Rust Lang Org.
-
Clique em "rustup-init.exe (64-bit)", se o seu computador for 64 bits.
-
Clique em "rustup-init.exe (32-bit)", se o seu computador for 32 bits.
Execute o arquivo e espere a instalação no seu computador. Para verificar se a linguagem foi corretamente instalada, execute o comando rustup --version
em seu prompt de comando. A tela de execução deverá ser semelhante a tela abaixo:
Em primeiro lugar, atualize o linux utilzando o comando sudo apt-get update
para distribuições baseadas em Debian.
Em outras distribuições, como a Fedora, o comando será diferente. Nesse caso, o camando para a atualização será sudo dnf updade
.
Em segundo lugar, realize o upgrade. Em distribuições baseadas em debian, o comando é sudo apt-get upgrade
. Para distribuições Fedora, o comando é sudo dnf upgrade
Depois, para usar o instalador rustup, precisamos digitar o seguinte comando em nosso terminal. Execute: curl https://sh.rustup.rs -sSf | sh
Agora, vamos configurar nosso shell atual usando o seguinte comando: source $HOME/.cargo/env
Por fim, podemos verificar se a instação foi feita corretamente usando o comando: rustc --version
OBS: sudo apt install rustc
Todas informações disponíveis aqui, estão contidas no site: Microsoft Ignite
No Windows, o Rust requer certas ferramentas de compilação do C++. Ao instalar o Visual Studio, há várias cargas de trabalho do Windows que recomendamos que você selecione desenvolvimento de área de trabalho .NET, desenvolvimento para área de trabalho com C++ e desenvolvimento de Plataforma Universal do Windows.
Usando o Visual Studio Code (VS Code) como seu editor de texto/Ambiente de Desenvolvimento Integrado (IDE), você pode aproveitar os serviços de linguagem, como completar automaticamente o código, realçar a sintaxe, formatar e depurar.
O VS Code também contém um terminal interno que permite a você emitir argumentos de linha de comando (para emitir comandos para Cargo, por exemplo).
1º) Depois de instalar o VS Code, instale a extensão "rust-analyzer". Você pode instalar a extensão Rust-Analyzer no Visual Studio Marketplace, ou pode abrir o VS Code e pesquisar a Rust-Analyzer no menu extensões (Ctrl + Shift + X).
2º) Para obter compatibilidade com a depuração, instale a extensão CodeLLDB. Você pode instalar a extensão CodeLLDB no Visual Studio Marketplace, ou pode abrir o VS Code e pesquisar a CodeLLDB no menu extensões (Ctrl + Shift + X).
3º) Para abrir o terminal no VS Code, selecione Exibir>Terminal ou, como alternativa, use o atalho Ctrl+` (usando o caractere de acento grave). O terminal padrão é o PowerShell.
OBS Imporante: A extensão rust-analyzer funciona corretamente para uma pasta moldada com base no cargo. Em outras palavras, é necessário ter arquivos no diretório como toml e outros. Veja no Hands-On 2 como criar um arquivo com Cargo e utilize essa importante ferramenta para maximizar o seu aprendizado.
Leonardo Saads Pinto 👾🤖👾 |
Steve Klabnik & Carol Nichols e a comunidade Rust, que forneceram um excelente material online.