Spaces:
Running
Running
File size: 2,016 Bytes
b2fdd63 5d44156 11aa4b5 bc94d3d b2fdd63 11aa4b5 b2fdd63 11aa4b5 b2fdd63 11aa4b5 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
---
title: Java-Judge-OO
emoji: ⚖️☕♨️🖥️
colorFrom: blue
colorTo: indigo
sdk: gradio
sdk_version: 4.7.1
app_file: app.py
pinned: false
license: mit
---
# Avaliador de POO em Java
Este projeto avalia códigos Java com base nos conceitos da Programação Orientada a Objetos (POO), fornecendo feedback detalhado e pontuações de acordo com uma rubrica bem definida.
## Desenvolvedor
Desenvolvido por Ramon Mayor Martins (2024)
- Email: rmayormartins@gmail.com
- Homepage: https://rmayormartins.github.io/
- Twitter: @rmayormartins
- GitHub: https://github.com/rmayormartins
- Space: https://huggingface.co/rmayormartins
## Funcionalidades Principais
- **Análise de Sintaxe**:
- Detecta tipos primitivos, constantes e variáveis.
- Identifica estruturas de controle como `if/else`, `switch/case`, laços e operadores.
- Analisa operações de entrada e saída (e.g., `System.out.print`, `Scanner`).
- **Análise de POO**:
- Conta classes, objetos e métodos.
- Avalia encapsulamento, herança, polimorfismo e abstração.
- **Interface Amigável**:
- Permite upload de múltiplos arquivos Java.
- Exibe resultados detalhados em um formato legível e intuitivo.
## Rubrica de Avaliação
### Pontuação Essencial (60 pontos)
- **Classes e Objetos**: 20 pontos.
- **Métodos**: 20 pontos.
- **Atributos**: 20 pontos.
### Pontuação Bonificada (40 pontos)
- **Encapsulamento**: 10 pontos.
- **Herança**: 10 pontos.
- **Polimorfismo**: 10 pontos.
- **Abstração**: 10 pontos.
> Para mais detalhes, visualize a rubrica completa no arquivo [rubric.pdf](rubric.pdf) ou confira a tabela resumida abaixo.
![Tabela da Rubrica](rubric_table.png)
## Como Usar
1. Abra a interface do aplicativo.
2. Envie um ou mais arquivos `.java`.
3. Veja a pontuação e o feedback detalhado para cada arquivo.
## Desenvolvimento Local
Para rodar localmente:
```bash
pip install -r requirements.txt
python app.py
```
## Licença
Este projeto está licenciado sob a [MIT License](LICENSE).
|