Este projeto foi desenvolvido enquanto estudante da Trybe no módulo de Ciências da Computação.
Implementar funções e classes para a criação de um relatório de produtos e um script que executa a aplicação, dando a escolha entre relatórios simples e complexos, além de desenvolver também testes unitários.
- Aplicação de conceitos de Orientação a Objetos em Python;
- Aplicação de padrões de projeto;
- Leitura e escrita de arquivos nos formatos XML, CSV e JSON.
- Testar o construtor/inicializador do objeto Produto.
- Gerar a versão simplificada do relatório através da classe SimpleReport.
- Gerar a versão completa do relatório através da classe CompelteReport que deve herdar de SimpleReport.
- Gerar os relatórios através de um arquivo CSV através da classe Invetory.
- Gerar os relatórios através de um arquivo JSON através da classe Invetory.
- Gerar os relatórios através de um arquivo XML através da classe Invetory.
- Utilizar o método Strategy para refatorar o método da classe Inventory, criando uma classe especifica de leitura de arquivos.
- Testar o relatório individual do produto.
- Testar a geração de uma versão do relatório em cores.
- Criar a classe InventoryIterator e InventoryRefactor, permintindo a iteração entre dados de InventoryRefactor.
- Desenvolver a função main no módulo inventory_report/main.py, permintindo a execução da aplicação através do módulo sys.
- Python.
- Pytest.
- Flake8.
- Black.
- Wheel.
- Faker.
- Factory-Boy.
- Xmltodict.