Crie sua primeira CLI em Rust é uma continuação de Rust para iniciantes com foco em projetos. Em seis atividades práticas, você passará de pequenos programas Rust para uma aplicação completa de linha de comando com dependência externa, verificações de qualidade repetíveis, estado em arquivo, testes e um executável de lançamento.
O curso combina três laboratórios guiados com três desafios focados. Arquivos-fonte longos, árvores de módulos, estruturas de testes e manifestos são fornecidos como projetos iniciais. Você usará nano para fazer alterações pequenas e significativas nos limites ensinados, em vez de copiar programas longos no terminal.
O que você aprenderá
- Adicionar um crate com Cargo e explicar as funções diferentes de
Cargo.tomleCargo.lock - Ativar um recurso de crate e usar macros derive do
clappara criar argumentos, opções e subcomandos tipados - Ler a ajuda gerada e utilizar a validação tipada da linha de comando
- Aplicar rustfmt, Clippy estrito, testes e rustdoc como um ciclo de qualidade repetível para entrega
- Navegar por um pequeno projeto Rust com vários módulos sem concentrar todas as responsabilidades em
main.rs - Persistir dados por meio de um limite de arquivo claro e propagar erros com contexto
- Compilar, testar e executar um binário de lançamento otimizado com o grafo de dependências bloqueado
- Ampliar uma CLI nos limites de parser, biblioteca, armazenamento e saída preservando o comportamento anterior
Para quem é este curso
O curso é destinado a quem concluiu Rust para iniciantes ou possui familiaridade equivalente com propriedade, empréstimos, structs, enums, coleções, iteradores, Result, arquivos, módulos, testes, genéricos, traits e comportamento básico de processos de linha de comando.
Pré-requisitos: Você deve conseguir ler e fazer pequenas alterações em um projeto Cargo. Não é necessária experiência escolhendo crates externos, usando clap, executando Clippy ou rustdoc nem organizando uma CLI completa; esses conceitos são apresentados antes de serem exigidos.
Ambiente de aprendizagem: Cada atividade é executada em um novo terminal Linux LabEx com Rust e o projeto inicial necessário preparados. nano é o editor padrão. As atividades não compartilham estado do sistema de arquivos, portanto cada desafio inclui um projeto independente.
Perguntas frequentes
Preciso escrever uma aplicação completa a partir de um arquivo vazio?
Não. A estrutura, implementações longas, código repetitivo do parser, testes e dados são preparados no setup. As etapas guiadas pedem que você complete um pequeno limite de armazenamento, comando ou domínio por vez.
Por que o curso usa clap?
A biblioteca padrão é suficiente para a coleta simples de argumentos ensinada no curso anterior. clap adiciona opções tipadas, subcomandos, ajuda gerada e erros consistentes, tornando-se uma primeira dependência prática para uma CLI real.
O que significa “pronto para entrega” aqui?
Significa que outro desenvolvedor pode reproduzir as dependências, ler a interface pública, executar testes e confirmar formatação consistente e lint limpo. O curso transforma essas expectativas em comandos Cargo concretos.
O que vou construir?
Você concluirá um rastreador de tarefas baseado em arquivo com os subcomandos add, list e done, fará testes e criará um executável de lançamento. Depois, ampliará uma versão nova com filtro de tarefas abertas e saída de resumo.


