Skip to content

willianbrendo-dev/ConversorDeMoeda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💱 Conversor de Moeda em Tempo Real

Java 17+ Status Licença

Um conversor de moedas robusto e intuitivo que utiliza a ExchangeRate API para realizar conversões em tempo real, mantendo um histórico completo das transações realizadas.

Desenvolvido como parte da especialização em Back-End Java


✨ Funcionalidades

🔄 Conversões Suportadas

  • BRL ↔ USD (Real Brasileiro ↔ Dólar Americano)
  • USD ↔ ARS (Dólar Americano ↔ Peso Argentino)
  • BRL ↔ EUR (Real Brasileiro ↔ Euro)

📊 Recursos Avançados

  • ✅ Conversões em tempo real
  • ✅ Histórico em memória (sessão)
  • ✅ Persistência em arquivo
  • ✅ Registro de taxas e timestamps
  • ✅ Interface interativa no terminal

🛠️ Tecnologias Utilizadas

☕ Java 17+              → Linguagem principal
📦 Gson                  → Manipulação de JSON
🌐 ExchangeRate API      → Dados de conversão em tempo real
⏰ java.time             → Gerenciamento de data e hora
📄 FileWriter/Reader     → Persistência do histórico

📁 Estrutura do Projeto

ConversorDeMoeda/
│
├── 📂 src/
│   ├── 📂 br/com/willian/conversor/
│   │   ├── 📂 http/
│   │   │   └── 📄 ClienteHttp.java          # Requisições HTTP
│   │   ├── 📂 modelo/
│   │   │   └── 📄 ConversaoMoeda.java       # Record de dados da API
│   │   ├── 📂 util/
│   │   │   └── 📄 HistoricoUtils.java       # Gerenciamento do histórico
│   │   └── 📂 principal/
│   │       └── 📄 Principal.java            # Menu interativo
│
├── 📄 historico.txt                          # Histórico de conversões
└── 📄 README.md                              # Documentação

🚀 Como Usar

1️⃣ Clone o Repositório

git clone https://github.com/seu-usuario/ConversorDeMoeda.git
cd ConversorDeMoeda

2️⃣ Configure a API Key

Obtenha sua chave gratuita em ExchangeRate API e substitua no código:

String url = String.format(
    "https://v6.exchangerate-api.com/v6/SUA_CHAVE_AQUI/pair/%s/%s/%.2f",
    de, para, valor
);

3️⃣ Execute o Projeto

Abra no IntelliJ IDEA (ou sua IDE favorita) e execute a classe Principal.java.


💡 Exemplo de Uso

╔════════════════════════════════════════╗
║  Conversor de Moeda (Tempo Real) 💱   ║
╚════════════════════════════════════════╝

[1] BRL → USD
[2] USD → BRL
[3] USD → ARS
[4] ARS → USD
[5] BRL → EUR
[6] EUR → BRL
[7] Ver Histórico
[0] Sair

→ Escolha uma opção: 1

💰 Digite o valor a ser convertido de BRL para USD: 100

╔════════════════════════════════════════╗
║       Resultado da Conversão          ║
╚════════════════════════════════════════╝

  De:                BRL
  Para:              USD
  Taxa:              0.1837
  Valor convertido:  18.37 USD
  Atualização:       Sun, 19 Oct 2025 00:00:01 +0000

✅ Conversão salva no histórico!

📜 Formato do Histórico

O histórico é automaticamente salvo em historico.txt:

18/10/2025 14:35:12 | BRL → USD | Valor: 18.37 | Taxa: 0.1837 | API: Sun, 19 Oct 2025 00:00:01 +0000
18/10/2025 14:42:08 | USD → BRL | Valor: 544.50 | Taxa: 5.4450 | API: Sun, 19 Oct 2025 00:00:01 +0000
18/10/2025 14:55:33 | BRL → EUR | Valor: 16.85 | Taxa: 0.1685 | API: Sun, 19 Oct 2025 00:00:01 +0000

🎯 Próximos Passos

  • Adicionar suporte a mais moedas (JPY, GBP, CAD, etc.)
  • Implementar símbolos de moedas (R$, $, €, £)
  • Criar interface gráfica (GUI) com JavaFX
  • Melhorar tratamento de exceções e validações
  • Adicionar testes unitários com JUnit
  • Implementar cache de taxas para reduzir requisições

📝 Licença

Este projeto está sob a licença MIT. Sinta-se livre para usar, modificar e distribuir.


👨‍💻 Autor

Willian Brendo

Desenvolvedor Back-End Java em especialização

GitHub LinkedIn


Feito com ❤️ e ☕

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages