Sobes.tech
Junior — Middle

Pode dar um exemplo de implementação do padrão Singleton no código?

sobes.tech IA

Resposta da IA

Em Dart (linguagem Flutter), o padrão Singleton pode ser implementado usando um construtor privado e um campo estático que armazena a única instância da classe. Aqui está um exemplo simples:

class Singleton {
  // Construtor privado
  Singleton._privateConstructor();

  static final Singleton _instance = Singleton._privateConstructor();

  // Construtor de fábrica que retorna a única instância
  factory Singleton() {
    return _instance;
  }

  void someMethod() {
    print('Chamada do método Singleton');
  }
}

void main() {
  var s1 = Singleton();
  var s2 = Singleton();

  print(identical(s1, s2)); // true, ambos objetos são iguais
  s1.someMethod();
}

Dessa forma, a classe Singleton garante que apenas uma instância seja criada, e todas as chamadas ao construtor retornam esse mesmo objeto.