Um conversor de moedas desenvolvido em Java como parte do Challenge ONE da Alura, programa de bolsas de estudos Oracle Next Education (ONE) - Trilha Back-end Java.
Este projeto é um conversor de moedas que permite converter valores entre diferentes moedas de forma simples e intuitiva. A aplicação foi desenvolvida seguindo as melhores práticas de programação Java e utiliza interface gráfica com Swing para uma experiência de usuário amigável.
- Aplicar conceitos fundamentais de Java
- Trabalhar com APIs de cotação de moedas
- Implementar interface gráfica com Swing
- Praticar estruturas de controle e manipulação de dados
- Desenvolver habilidades de programação orientada a objetos
- ✅ Conversão entre múltiplas moedas
- ✅ Interface gráfica intuitiva
- ✅ Cotações atualizadas
- ✅ Validação de entrada de dados
- ✅ Histórico de conversões
- ✅ Suporte a diferentes formatos de moeda
- Java 8+ - Linguagem de programação principal
- Swing - Framework para interface gráfica
- API de Cotação - Para obter taxas de câmbio atualizadas
- JSON - Para manipulação de dados da API
- 🇺🇸 USD - Dólar Americano
- 🇪🇺 EUR - Euro
- 🇧🇷 BRL - Real Brasileiro
- 🇬🇧 GBP - Libra Esterlina
- 🇯🇵 JPY - Iene Japonês
- 🇨🇦 CAD - Dólar Canadense
- 🇦🇺 AUD - Dólar Australiano
- 🇨🇭 CHF - Franco Suíço
- Java JDK 8 ou superior instalado
- IDE de sua preferência (IntelliJ IDEA, Eclipse, VS Code)
-
Clone o repositório
git clone https://github.com/nicholascode-hub/conversor-de-moedas.git
-
Navegue até o diretório do projeto
cd conversor-de-moedas -
Compile o projeto
javac -cp . src/*.java
-
Execute a aplicação
java -cp . src.Main
- Iniciar a aplicação: Execute o arquivo principal
- Selecionar moedas: Escolha a moeda de origem e destino
- Inserir valor: Digite o valor que deseja converter
- Converter: Clique no botão "Converter" para ver o resultado
- Nova conversão: Utilize as opções para fazer uma nova conversão
conversor-de-moedas/
├── src/
│ ├── Main.java # Classe principal
│ ├── ConversorMoedas.java # Lógica de conversão
│ ├── InterfaceGrafica.java # Interface Swing
│ ├── ApiService.java # Serviço de API
│ └── utils/
│ ├── Validador.java # Validações
│ └── Formatador.java # Formatação de dados
├── resources/
│ ├── icons/ # Ícones da aplicação
│ └── config.properties # Configurações
├── README.md
└── .gitignore
- Arquitetura MVC: Separação clara entre Model, View e Controller
- Tratamento de Exceções: Gerenciamento robusto de erros
- Validação de Dados: Verificação de entrada do usuário
- Interface Responsiva: Design adaptável e user-friendly
- Código Limpo: Seguindo boas práticas de programação
- Adicionar mais moedas
- Implementar gráficos de variação cambial
- Salvar histórico em arquivo
- Adicionar tema escuro
- Implementar conversão offline
- Adicionar calculadora de taxas
- Programação Orientada a Objetos
- Interface Gráfica com Swing
- Consumo de APIs REST
- Manipulação de JSON
- Tratamento de Exceções
- Validação de Dados
- Padrões de Projeto
Contribuições são sempre bem-vindas! Para contribuir:
- Faça um fork do projeto
- Crie uma branch para sua feature (
git checkout -b feature/MinhaFeature) - Commit suas mudanças (
git commit -am 'Adiciona MinhaFeature') - Push para a branch (
git push origin feature/MinhaFeature) - Abra um Pull Request
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Nicholas - GitHub
Desenvolvido como parte do programa Oracle Next Education (ONE) em parceria com a Alura.
O Oracle Next Education é um programa de educação e empregabilidade com objetivo social de capacitar pessoas em tecnologia e conectá-las com o mercado de trabalho por meio de empresas parceiras.
⭐ Se este projeto te ajudou, não esqueça de dar uma estrela!
🔗 Conecte-se comigo no LinkedIn e compartilhe seu projeto!