Namensherkunft Singleton

Woher kommt der Name: Singleton

Der Name Singleton stammt aus der Informatik und bezeichnet ein Entwurfsmuster, das zur Implementierung von Klassen verwendet wird. Das Singleton-Muster sorgt dafür, dass eine Klasse nur einmal instanziiert wird und somit nur eine einzige Instanz existiert.

Ursprung des Namens

Der Name Singleton leitet sich von dem englischen Wort „single“ ab, was so viel wie „einzeln“ oder „einzigartig“ bedeutet. Das Muster wurde erstmals in den 1990er Jahren von den sogenannten „Gang of Four“ (Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides) in ihrem Buch „Design Patterns: Elements of Reusable Object-Oriented Software“ beschrieben.

Anwendungsbereiche

Das Singleton-Muster wird häufig in Situationen eingesetzt, in denen nur eine einzige Instanz einer Klasse benötigt wird. Beispiele hierfür sind beispielsweise:

  • Log-Dateien
  • Datenbankverbindungen
  • Hardware-Controller
  • Systemkonfigurationen

Das Singleton-Muster sorgt dafür, dass die Instanzierung der Klasse nur einmal erfolgt und somit Ressourcen gespart werden. Außerdem wird sichergestellt, dass alle Zugriffe auf die Klasse auf die gleiche Instanz erfolgen, was die Konsistenz der Daten gewährleistet.

Implementierung

Die Implementierung des Singleton-Musters kann auf verschiedene Weise erfolgen. Eine Möglichkeit ist die Verwendung eines statischen Attributs innerhalb der Klasse, das die einzige Instanz der Klasse speichert. Der Konstruktor der Klasse wird dabei auf private gesetzt, um eine Instanzierung von außerhalb der Klasse zu verhindern. Stattdessen wird eine statische Methode bereitgestellt, die die Instanz der Klasse zurückgibt oder gegebenenfalls eine neue Instanz erzeugt.

Ein Beispiel für die Implementierung des Singleton-Musters in Java:


public class Singleton {
  private static Singleton instance = null;

  private Singleton() {
    // private constructor
  }

  public static Singleton getInstance() {
    if (instance == null) {
      instance = new Singleton();
    }
    return instance;
  }
}

Durch die Verwendung des Singleton-Musters kann die Anzahl der Instanzen einer Klasse auf eine einzige beschränkt werden, was in vielen Anwendungsbereichen von Vorteil ist. Der Name Singleton leitet sich dabei von der Einzigartigkeit der Klasse ab.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert