Dlaczego tak
We wzorcu Obserwator obiekt obserwowany przechowuje listę subskrybentów zgodnych ze wspólnym interfejsem i po zmianie stanu wywołuje u każdego metodę powiadamiającą, nie znając ich konkretnych klas. Nowy rodzaj odbiorcy dodaje się bez zmiany klasy kursu. Fasada upraszcza dostęp do złożonego podsystemu jednym interfejsem, ale nie rozsyła powiadomień, a Singleton jedynie gwarantuje istnienie jednej instancji klasy.