Executando verificação de segurança...
7

1 - Chega de adiar, venha ter a primeira aula de Rust!

Este é um guia separado em vários posts, sumário:

  1. Chega de adiar, venha ter a primeira aula de Rust! (Você está aqui)
  2. Variáveis let, Mutabilidade e Sombreamento
  3. Tipagem de dados (escrevendo...)

Não vou me alongar explicando o "por que Rust", "o que é rust" e nem tentar convencê-lo a aprender a linguagem. Se não tiver interesse, não se preocupe, existem muitas outras coisas interessantes para ler sobre o ChatGPT pela internet nos dias de hoje. No entanto, se quiser dar uma chance a este post, saiba que estou compartilhando com você minha paixão e dedicação pela tecnologia, colocando todo o meu coração na criação deste guia.

Antes de prosseguir

É necessário instalar o Rust e o Cargo em seu sistema, seguindo as instruções deste link. Se você já está familiarizado com outras linguagens de programação, como JavaScript, pode pensar no Cargo como equivalente ao npm no ecossistema Node.js, mas se é iniciante, saiba que o Cargo é um gerenciador de projetos em Rust, auxiliando com pacotes e facilitando a construção e execução do código. Também é altamente recomendado a instalação do rust-analyzer (caso utilize o VSCode basta procura-lo na loja de extensões).

O "Olá Mundo"

Vamos escrever nosso primeiro programa rust, crie um arquivo chamado main.rs e escreva:

fn main() {
  println!("Olá mundo");
}

🎯 Linha a Linha de main.rs

Caso você já seja programador e não sentiu dificuldade em entender o código acima, pode pular esta explicação linha a linha.

  1. Definição da função main onde:
    • fn: define que será escrito uma função;
    • main: nome da função;
    • (): parâmetros que a função recebe, neste caso nenhum;
    • {: inicio do corpo da função;
  2. Impressão do texto Olá mundo onde:
    • println!: função para impressão que recebe por parâmetro o que deve ser impresso.
    • "Olá mundo": texto que será impresso no terminal;
    • ;: indicador para término de linha (obrigatório na linguagem);
  3. Término do corpo da função

Executando o código

Execute no terminal o comando:

rustc main.rs

Isso irá gerar um arquivo executável que você poderá rodar chamando o próprio arquivo:

./main # linux e win, obg natanael755

Irá imprimir:

Olá mundo

Se seguiu este passo a passo e viu a impressão Olá mundo... Parabéns 🥳 você rodou com sucesso seu primeiro código rust. 🎉

Criando nosso primeiro projeto

Execute:

cargo new projeto

Isso irá criar uma pasta chamada projeto com estes arquivos dentro dela:

project
├── Cargo.lock   // registros do cargo
├── Cargo.toml   // configurações e dependências
├── src          // pasta principal do código
│   └── main.rs  // arquivo de entrada
└── target       // arquivos temporários do cargo

Quando criamos nosso "Olá mundo" geramos manualmente o binário e depois o executamos, mas num projeto cargo não precisamos fazer todas essas etapas, bastando executar:

cargo run

Que o cargo irá fazer as duas etapas por nós imprimindo "Hello World". O cargo possui vários comandos úteis para ajudar no desenvolvimento, os mais utilizados são:

cargo run   // compila e executa a aplicação
cargo check // compila e verifica erros (para quando quer verificar se há erros)
cargo test  // executa os testes automatizados
cargo build // gera um binário pronto para produção
Carregando publicação patrocinada...
1

Gostei bastante! Tenho por desejo aprender e gostaria de saber se seria viável construir um app robusto com ela ou se seria melhor ir para um Node dda vida? Digo, por questões de curva de aprendizado etc.

1

Vou ser sincero, eu não recomendaria esta linguagem como uma primeira linguagem, não pq não ache ela boa, eu acho ela maravilhosa, mas para alguem que precisa ainda entrar na área, provavelmente será melhor aprender uma linguagem com mercado maior e assim ter mais chances. Mas se você já está na área e procura eficiencia e segurança, então ela é para você e independente do que deseja construir, ela vai te atender bem, a curva de aprendizagem dela é ingrime como a de C, Java, GO... Mas diferente dessas linguagens o rust te impede de fazer algumas "cagadas" na memória da máquina. Acompanhe meus posts e verá.

1

Por esses motivos citados pelo nobre colega
E que estou iniciando meus estudos em linguagem Rust
Com foco na industria Robotica e de drones. 4.0
Obrigado por dispor das aulas
Vou divuga-las