{"id":24965001,"url":"https://github.com/jojowam/classroommanager-java","last_synced_at":"2026-05-17T11:32:38.343Z","repository":{"id":166227586,"uuid":"619966256","full_name":"JoJowam/ClassroomManager-JAVA","owner":"JoJowam","description":"Sistema de gestão de salas de aula com cadastro de alunos, professores, gestores, cursos e salas de aula em JAVA","archived":false,"fork":false,"pushed_at":"2023-03-27T19:38:06.000Z","size":27,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-13T05:39:55.066Z","etag":null,"topics":["gerenciamento-turmas","heranca-e-polimorfismo","java","opp","programacao-orientada-objetos","ufop"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JoJowam.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-03-27T19:08:42.000Z","updated_at":"2025-06-04T14:09:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"f06f05a0-fa54-4787-b860-dd2533b0efab","html_url":"https://github.com/JoJowam/ClassroomManager-JAVA","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/JoJowam/ClassroomManager-JAVA","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JoJowam%2FClassroomManager-JAVA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JoJowam%2FClassroomManager-JAVA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JoJowam%2FClassroomManager-JAVA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JoJowam%2FClassroomManager-JAVA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JoJowam","download_url":"https://codeload.github.com/JoJowam/ClassroomManager-JAVA/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JoJowam%2FClassroomManager-JAVA/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33136722,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-17T09:28:26.183Z","status":"ssl_error","status_checked_at":"2026-05-17T09:27:52.702Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gerenciamento-turmas","heranca-e-polimorfismo","java","opp","programacao-orientada-objetos","ufop"],"created_at":"2025-02-03T10:19:06.552Z","updated_at":"2026-05-17T11:32:38.338Z","avatar_url":"https://github.com/JoJowam.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sistema de Gestão de Salas de Aula em Java com Interface Gráfica em Swing\n\nEste projeto é uma reimplementação do Sistema de Gestão de Salas de Aula desenvolvido em C++ como parte da disciplina de Programação Orientada a Objetos lecionada na Universidade Federal de Ouro Preto - UFOP. O objetivo do projeto foi implementar um sistema de gestão de salas de aula em Java, utilizando a biblioteca gráfica Swing para construir a interface do usuário.\n\nO sistema possui as mesmas funcionalidades da versão em C++, permitindo o cadastro de alunos, professores, gestores, cursos e salas de aula, bem como a visualização, atualização e exclusão dos dados cadastrados. No entanto, a interface gráfica em Swing proporciona uma experiência mais intuitiva e agradável ao usuário, com menus e janelas organizadas de forma clara e simples.\n\nO sistema permite o cadastro de alunos, professores, gestores, cursos e salas de aula, com informações como nome, telefone, CPF e curso. Além disso, os gestores possuem login e senha para acesso ao sistema definidor como `admin` por padrão. O cadastro de cursos e professores é feito de forma que cada curso só possa ser designado para um professor.\n\nOs gestores têm acesso ao sistema para inserir, visualizar, atualizar e excluir dados. Os alunos e professores podem acessar o sistema sem login e senha, mas só podem visualizar informações e não têm acesso a dados pessoais. Por exemplo, os professores podem visualizar a sala reservada para o curso, e os alunos matriculados. Os alunos podem visualizar o curso que ocorrerá em cada sala e o professor que ministrará o curso.\n\nA implementação do sistema em Java com interface gráfica em Swing torna possível gerenciar de forma mais eficiente a alocação das salas de aula, bem como o controle das informações de alunos, professores e gestores. Para desenvolver a aplicação, foram utilizados conceitos de programação orientada a objetos, tais como a definição de classes e objetos, encapsulamento de informações, herança e polimorfismo\n\n\n## Como Executar\n\nPara executar o sistema, é necessário ter o `Java Development Kit (JDK)` instalado em seu computador. Após isso, basta compilar os arquivos e executar o arquivo Main.java presente no diretório src do projeto. A partir da interface gráfica em Swing, é possível acessar todas as funcionalidades do sistema.\n\n**Caso haja alguma dependência faltando, é necessário instalar antes de compilar o programa.**\n\nÉ importante destacar que o programa foi desenvolvido e testado em um ambiente Windows, portanto, o processo de compilação e execução pode variar em outros sistemas operacionais.\n\nPara compilar o codigo digite o seguinte no terminal: `javac -d bin src/*.java`. O codigo ao lado irá gerar uma pasta chamada \"bin\" no diretorio com todos os arquivos .class. Para compilar o programa digite a seguinte linha de cógigo no terminal `java -cp bin Main`.\n\n```\njavac -d bin src/*.java\n\njava -cp bin Main\n```\n\nRepresentação simples dos menus:\n![Menu Image](https://i.imgur.com/XGxpDCu.png \"Classroom Manager CRUD\")\n\n# Funcionalidades\n\nO sistema possui diversas funcionalidades que permitem uma gestão completa das salas de aula. Dentre elas, destacam-se:\n\n## Cadastro de Dados\n\nO sistema permite o cadastro de diferentes tipos de dados, como alunos, professores, gestores, cursos e salas de aula. Cada um desses cadastros é realizado de forma independente e requer informações específicas.\n\n## Consulta de Dados\n\nÉ possível visualizar os dados cadastrados em todas as categorias. Os gestores possuem acesso total às informações, enquanto os alunos e professores possuem acesso apenas a algumas informações limitadas.\n\n## Edição de Dados\n\nCaso seja necessário atualizar alguma informação, o sistema permite a edição dos dados cadastrados. Para tanto, é necessário possuir acesso de gestor e fazer login no sistema.\n\n## Exclusão de Dados\n\nCaso seja necessário remover algum dado cadastrado, o sistema permite a exclusão dos mesmos. Apenas gestores têm permissão para realizar esta ação.\n\nEm resumo, o sistema permite uma gestão completa das salas de aula e de seus integrantes, permitindo que gestores, professores e alunos possam acompanhar informações importantes relacionadas aos cursos e salas de aula.\n\n    - Gerenciamento completo das salas de aula e seus integrantes;\n    \n    - Cadastro de alunos, professores, gestores, cursos e salas de aula;\n    \n    - Consulta de dados cadastrados;\n    \n    - Edição de dados cadastrados;\n    \n    - Exclusão de dados cadastrados;\n    \n    - Acompanhamento de informações importantes pelos gestores, professores e alunos, relacionadas aos cursos e salas de aula.\n\n\n## Licença\n\nEste projeto é licenciado sob a licença MIT - veja o arquivo LICENSE para mais detalhes.\n[MIT License](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjojowam%2Fclassroommanager-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjojowam%2Fclassroommanager-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjojowam%2Fclassroommanager-java/lists"}