Este repositório contém implementações práticas dos principais Design Patterns em Java.
Implementação do padrão Singleton aplicado a um sistema de gerenciamento de configurações.
O Singleton garante que uma classe tenha apenas uma única instância durante toda a execução da aplicação, fornecendo um ponto de acesso global.
- Economia de recursos: Uma única instância carrega as configurações
- Consistência: Todos os componentes veem as mesmas configurações
- Facilidade de acesso: Qualquer classe pode obter configurações facilmente
- Controle centralizado: Mudanças afetam toda a aplicação
singleton/
└── configmanager/
├── basic/
│ ├── ConfigManager.java # Implementação básica do Singleton
│ └── TesteSingleton.java # Teste da funcionalidade
└── resources/
└── config.properties # Arquivo de configurações
- Compile:
javac singleton/configmanager/basic/*.java
- Execute:
java singleton.configmanager.basic.TesteSingleton
- ✅ Singleton básico (não thread-safe)
- ✅ Carregamento automático de propriedades
- ✅ Métodos getProperty() com valores padrão
- ✅ Tratamento de erros
- Thread-safe Singleton
- Singleton com Enum
- Lazy initialization
- Performance optimizations
- Java 11+
- Properties API
- Design Patterns
Este projeto foi desenvolvido seguindo uma abordagem mentoreada, focando na compreensão conceitual antes da implementação.