Wann sollte Singleton Swift verwendet werden?

Inhaltsverzeichnis:

Wann sollte Singleton Swift verwendet werden?
Wann sollte Singleton Swift verwendet werden?

Video: Wann sollte Singleton Swift verwendet werden?

Video: Wann sollte Singleton Swift verwendet werden?
Video: Swift2 Tutorial #23: Funktionen in Swift nutzen 2024, Dezember
Anonim

Sie verwenden Singletons, um eine global zugängliche, gemeinsam genutzte Instanz einer Klasse bereitzustellen Diese Definition ist nicht einzigartig in der Dokumentation von Apple. Der Wikipedia-Artikel, den ich oben verlinkt habe, besagt auch, dass „Eine Implementierung des Singleton-Musters globalen Zugriff auf diese Instanz bieten muss.“

Warum wird Singleton in Swift verwendet?

Singleton ist ein kreatives Entwurfsmuster, das sicherstellt, dass nur ein Objekt seiner Art existiert und einen einzigen Zugriffspunkt darauf für jeden anderen Code bietet. Singleton hat fast die gleichen Vor- und Nachteile wie globale Variablen. Obwohl sie superpraktisch sind, brechen sie die Modularität Ihres Codes.

Wann sollten Sie keinen Singleton verwenden?

Die einzige Situation, in der Sie einen Singleton in Betracht ziehen sollten, ist, wenn mehr als eine Instanz von bereits globalen Daten tatsächlich ein logischer oder Hardware-Zugriffsfehler.

wäre …

Verwandte Links:

  1. Sprödigkeit hervorgerufen durch Global State und Singletons.
  2. Abhängigkeitsinjektion zur Vermeidung von Singletons.
  3. Factories und Singletons.

Wofür ist Singleton gut?

Ein Singleton sollte verwendet werden, wenn der Zugriff auf eine Ressource verw altet wird, die von der gesamten Anwendung gemeinsam genutzt wird, und es wäre destruktiv, mehrere Instanzen derselben Klasse zu haben. Sicherzustellen, dass der Zugriff auf gemeinsam genutzte Ressourcen Thread-sicher ist, ist ein sehr gutes Beispiel dafür, wo diese Art von Muster von entscheidender Bedeutung sein kann.

Ist Singleton schlecht Swift?

Singletons sind nicht allgemein schlecht, aber in vielen Situationen bringen sie eine Reihe von Problemen mit sich, die vermieden werden können, indem man klarer definierte Beziehungen zwischen Ihren Objekten erstellt und Abhängigkeiten verwendet Injektion.

Empfohlen: