Aplicação Java com interface gráfica Swing para consultar e exibir a previsão do tempo usando a API OpenWeatherMap.
- Interface gráfica moderna com FlatLaf (versão 3.6)
- Tema escuro/claro dinamicamente alternável
- Pesquisa por nome da cidade
- Pesquisa por coordenadas (latitude e longitude)
- Seleção de unidades: Celsius, Fahrenheit, Kelvin
- Exibição do clima atual: temperatura, descrição, umidade, nascer e pôr do sol
- Previsão estendida para os próximos 7 dias via One Call API
- Logging detalhado em console e arquivo (
weather_app.log) - Requisições em segundo plano com SwingWorker
- Tratamento avançado de exceções
PrevisaoDoTempoJava/ ├── WeatherAppGUI.java # Interface gráfica principal ├── gson-2.10.1.jar # Biblioteca Gson para JSON parsing ├── flatlaf-3.6.jar # FlatLaf Look and Feel ├── README.md └── .vscode/ └── settings.json
text
- Instale Java JDK 11 ou superior.
- Baixe as dependências e coloque na pasta do projeto:
gson-2.10.1.jarflatlaf-3.6.jar
- Configure o VS Code em
.vscode/settings.json:
{ "java.project.referencedLibraries": [ "gson-2.10.1.jar", "flatlaf-3.6.jar" ] }
text
No Windows:
javac -cp ".;gson-2.10.1.jar;flatlaf-3.6.jar" WeatherAppGUI.java java -cp ".;gson-2.10.1.jar;flatlaf-3.6.jar" WeatherAppGUI
text
No Linux/Mac:
javac -cp ".:gson-2.10.1.jar:flatlaf-3.6.jar" WeatherAppGUI.java java -cp ".:gson-2.10.1.jar:flatlaf-3.6.jar" WeatherAppGUI
text
- Execute o programa para abrir a janela gráfica.
- Digite uma cidade e clique em Consultar Cidade ou informe coordenadas e clique em Consultar Coordenadas.
- Use o menu Unidades para alternar entre °C, °F ou K.
- Clique no botão de tema para alternar entre modo escuro e claro.
- Veja o clima atual e a previsão estendida de 7 dias no painel abaixo.
- Criar testes unitários (JUnit) para métodos de consulta.
- Adicionar logs de métricas de desempenho.
- Melhorar UI com ícones e responsividade.
- Implementar cache local para reduzir chamadas à API.
Gustavo Mimoso