Junior — Middle
Qual é o objetivo principal do padrão Singleton e em que casos é aplicado?
sobes.tech IA
Resposta da IA
O padrão Singleton garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global a essa instância. Isso é útil quando é necessário controlar o acesso a algum recurso, como um banco de dados, configurações de aplicação ou um logger.
Aplica-se Singleton quando:
- É necessário limitar a criação de objetos a uma única instância.
- É necessário um controlo centralizado do estado ou recursos.
- É preciso garantir o acesso global ao objeto sem passá-lo por parâmetros.
Exemplo em PHP:
class Singleton {
private static ?Singleton $instance = null;
private function __construct() {
// construtor privado
}
public static function getInstance(): Singleton {
if (self::$instance === null) {
self::$instance = new Singleton();
}
return self::$instance;
}
}
// Uso
$instance = Singleton::getInstance();