Sobes.tech
Junior — Middle

Qual é o objetivo do padrão Singleton na arquitetura de software?

sobes.tech IA

Resposta da IA

O padrão Singleton destina-se a garantir que apenas uma instância de uma classe exista na aplicação. Isto é útil quando é necessário gerir de forma centralizada o acesso a um recurso, como uma base de dados ou configuração.

Principais características do Singleton:

  • Garante uma única instância da classe.
  • Fornece um ponto de acesso global a essa instância.

Exemplo em PHP:

class Singleton {
    private static ?Singleton $instance = null;

    private function __construct() {
        // construtor privado que impede a criação de instâncias de fora
    }

    public static function getInstance(): Singleton {
        if (self::$instance === null) {
            self::$instance = new Singleton();
        }
        return self::$instance;
    }

    public function doSomething() {
        echo "Executar uma ação";
    }
}

// Uso
$singleton = Singleton::getInstance();
$singleton->doSomething();

Assim, o Singleton ajuda a controlar a criação de objetos e evita a duplicação de recursos.