Czy to odpowiedni moment aby zastosować wzorzec?

0

Mam napisaną grę planszową pod Androida. Gra posiada własną klasę. Zawsze będzie tworzony jeden i tylko jeden obiekt klasy. Czy powinien zastosować wzorzec singleton?

0

A musisz? Bo rozumiesz że singleton nie wynika z tego że jest jeden obiekt, tylko z tego że jest jeden obiekt którego potrzebuje wiele innych obiektów. Singleton to jest sposób na dostarczenie zależności do innych obiektów, tak samo jak Service Locator czy Dependency Injection. Sam fakt że jakiś obiekt jest jeden o niczym nie świadczy, chyba że jest bardzo kosztowny w konstrukcji.

0

Forum nie czytasz? Singleton to zło. W takim razie odpowiedź brzmi - nie. :)

0

Chyba rozumiem. Singleton nic nie da.

0

Nie o to chodzi, że nic nie da, ale o to, że nie jest potrzebny. Paradoksalnie singleton nie powinien być implementowany przez programistów w ramach ich kodu. Singleton choć jest wzorcem kreacyjnym powinien znajdować się na poziomie języka (np. w scali masz object) i być deklaratywny.
W twojej implementacji masz już singleton. Po prostu w domenie aplikacji jest tylko jeden obiekt i kod zapewnia, że będzie tylko jeden obiekt. Zaszycie implementacji w jakiś hardkorowy sposób jest niepotrzebne. Jak już bardzo chcesz coś naklepać to obuduj tworzenie obiektu przez fabrykę by mieć jakiś bufor pomiędzy swoim kodem i konstruktorem. Tylko tyle i aż tyle.

1 użytkowników online, w tym zalogowanych: 0, gości: 1