Letzte Änderung am 20. August 2020 by Christoph Jüngling
Das Singleton-Pattern ist dann nützlich, wenn man genau eine Instanz einer Klasse benötigt. Durch den Zugriff in der beschrieben Weise wird sichergestellt, dass diese eine Instanz im Moment der ersten Benutzung erzeugt und danach immer dieselbe Instanz verwendet wird.
Hier ist das Prinzip am Beispiel des alten Visual-Basic-Dialektes gezeigt, den ja vielleicht noch jemand nutzt :-)
Option Explicit
Private m_ObjectName As clsClassName
Public Property Get ObjectName() As clsClassName
If m_ObjectName Is Nothing Then Set m_ObjectName = New clsClassName
Set ObjectName = m_ObjectName
End Property
Anstelle von ObjectName und ClassName sollte natürlich ein sprechender Name verwendet werden.
Die Verwendung erfolgt dann einfach über den Namen des Properties, also z.B.:
ObjectName.AttribName = 42
MsgBox "Anmeldename: " + ObjectName.Anmeldename
Denkbar wäre zum Beispiel eine Klasse, die bestimmte Daten vorhält oder auch ein zentraler Dispatcher, auf den andere Klassen eine Referenz halten können, um z.B. dessen Events zu fangen.
1 Ping
[…] das Design Pattern Singleton benötigt eine Klasse, selbst wenn diese nur sehr einfach ausgestaltet sein sollte. Der Vorteil bei […]