Pular para conteúdo

Projeto Final: Sistema de Gerenciamento de Estoque I/O 📦

O projeto final é a consolidação de tudo o que aprendemos. Você vai construir uma aplicação que gerencia o estoque de uma loja, salvando os dados em arquivo e permitindo consultas concorrentes.

📋 Requisitos Integradores

  1. Estruturas: Use Structs e Enums para representar produtos e categorias.
  2. Segurança: Implemente tratamento de erros robusto com Result.
  3. Concorrência: Permita que uma thread de "auditória" leia o arquivo de estoque enquanto o usuário adiciona novos itens.
  4. Interface: Crie uma CLI profissional usando clap.

🛠️ Sugestão de Estrutura de Código

  • lib.rs: Contém a lógica de negócio (adicionar produto, salvar em arquivo, ler estoque).
  • models.rs: Define as structs e enums do domínio.
  • main.rs: Interface de linha de comando.

🚀 Desafios Extra (Opcional)

  • [ ] Web Integration: Adicione uma pequena API Actix Web que permita consultar o estoque via navegador.
  • [ ] Testes: Garanta que todas as funções críticas tenham pelo menos 80% de cobertura de testes.

🏁 Entrega

O seu repositório deve conter: 1. Arquivos .rs organizados. 2. Cargo.toml com dependências. 3. Um README.md explicando o funcionamento e como rodar o sistema. 4. Exemplos de uso (screenshots ou logs do terminal).