Spojrzmy prawdzie w oczy. Wzór Singleton jest bardzo kontrowersyjnym tematem z hordami programistów po obu stronach ogrodzenia. Są tacy, którzy czują, że Singleton jest niczym innym jak gloryfikowaną zmienną globalną, i inni, którzy przysięgają na wzór i używają go nieustannie. Nie chcę jednak, aby Kontrowersje Singletona leżały u podstaw mojego pytania. Każdy może wziąć udział w przeciąganiu liny, walczyć i zobaczyć, kto wygra, o ile mi zależy . Próbuję powiedzieć, że nie wierzę, że istnieje jedna poprawna odpowiedź i nie próbuję celowo rozpalać kłótni partyzanckich. Interesują mnie po prostu alternatywy singletonowe, kiedy zadaję pytanie:
Czy są jakieś konkretne alternatywy dla wzoru GOF Singleton?
Na przykład wiele razy, gdy w przeszłości korzystałem ze wzorca singleton, po prostu interesuje mnie zachowanie stanu / wartości jednej lub kilku zmiennych. Stan / wartości zmiennych można jednak zachować między każdą instancją klasy przy użyciu zmiennych statycznych zamiast używania wzorca singleton.
Jaki masz inny pomysł?
EDYCJA: Naprawdę nie chcę, aby był to kolejny post o tym, jak poprawnie używać singletona. Ponownie szukam sposobów, aby tego uniknąć. Dla zabawy, ok? Chyba zadaję czysto akademickie pytanie w Twoim najlepszym głosie zwiastuna filmu: „W równoległym wszechświecie, w którym nie ma singletona, co możemy zrobić?”