Ersetzen Sie Singletons mit was?

8

Singletons werden oft als schlechte Design-Wahl bezeichnet. Wie sollten Sie also eine Anwendung entwerfen, wenn Sie sie vermeiden möchten?

    
fig 24.04.2010, 12:39
quelle

2 Antworten

8

Sie können Konzepte wie Dependency Injection verwenden, um die Dienste, auf die Sie angewiesen sind (im Prinzip die von Ihnen verwendeten Singletons), zu injizieren , anstatt eine globale Referenz auf sie zu geben

    
Asaf David 24.04.2010, 12:42
quelle
2

Meine 2 Cent.

Entwerfen Sie Ihre Anwendung einfach so, dass es wirklich egal ist, ob das Singleton an Ihr Objekt weitergegeben wird oder nicht.

Überlegen Sie, ob Sie MySingleton.Instance innerhalb - & gt; das sieht schlecht aus und du bist eng damit verbunden. Wenn Sie MySignleton als Parameter in einer Methode übergeben haben und es als MySingleton.Instance oder neues MySingleton () - & gt; Naja, ich kann es immer noch verspotten oder verändern, also ist es nicht wirklich wichtig.

    
Andrey Taptunov 24.04.2010 12:49
quelle