Wzorce projektowe · Junior · Pytanie 4 z 75
Dlaczego Singleton często nazywa się antywzorcem?
- ✓Poprawna odpowiedź: Wprowadza ukryty stan globalny i utrudnia testowanie
- 2Wymaga zbyt dużo pamięci na przechowywanie instancji
- 3Nie da się go zaimplementować w JavaScript bez klas
Wyjaśnienie
Kod, który bezpośrednio odwołuje się do singletona, niejawnie od niego zależy: testy wpływają na siebie nawzajem, a podmiana implementacji jest trudna. Kompromis: utworzyć jedną instancję, ale przekazywać ją jawnie (dependency injection), by w testach podstawić mock.