aulify · Mini-Projecto
UC UC00618 · T. Desenv. Software
Versão · Aluno
Mini-Projecto · App Python completo
CLI / API com OOP, testes, GitHub
Índice
Contexto
Cada par/trio desenvolve app Python completa com OOP, persistência, testes, e deploy no GitHub. Cenários:
- A: To-do app CLI com persistência.
- B: Calculator avançada (científica).
- C: Web scraper de notícias.
- D: API REST simples (Flask).
- E: Bot Discord/Telegram.
Requisitos
Funcionais
- OOP: pelo menos 2 classes.
- Persistência: JSON / SQLite / file.
- Tratamento de erros robusto.
- Type hints em todo o código.
- Docstrings em funções.
- Testes com pytest (>= 70% cobertura).
- CLI com click ou argparse.
- README completo.
Não-funcionais
- Código formatado com Black.
- GitHub com PRs.
- Apresentação + demo.
Fases
| Fase | Tempo | Entregável |
|---|---|---|
| 1. Design + estrutura | 2h | Diagrama de classes + estrutura repo |
| 2. Implementação core | 5h | Funcionalidade principal |
| 3. Persistência | 2h | Save/load funcional |
| 4. CLI | 2h | Interface usável |
| 5. Testes | 2h | Cobertura >= 70% |
| 6. README + docs | 1h | Documentação completa |
| 7. GitHub + CI | 1h | Repo público com CI |
| 8. Apresentação | 1h | Demo ao vivo |
Critérios
| Item | Peso |
|---|---|
| Design e estrutura | 10% |
| OOP correcto | 15% |
| Funcionalidade completa | 20% |
| Testes | 15% |
| Type hints + docstrings | 10% |
| GitHub workflow | 10% |
| README | 10% |
| Apresentação | 10% |
Reflexão
Em meia página: que funcionalidade Python mais te impressionou? Que biblioteca descobriste útil? Que projecto vais fazer a seguir?