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
- Estruturas: Use
StructseEnumspara representar produtos e categorias. - Segurança: Implemente tratamento de erros robusto com
Result. - Concorrência: Permita que uma thread de "auditória" leia o arquivo de estoque enquanto o usuário adiciona novos itens.
- 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).