eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingkiedy singleton, a kiedy statyczne metody?Re: kiedy singleton, a kiedy statyczne metody?
  • Data: 2012-07-14 07:30:55
    Temat: Re: kiedy singleton, a kiedy statyczne metody?
    Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu piątek, 13 lipca 2012 20:10:10 UTC+2 użytkownik (Nieznane) napisał:

    > Mam nieduże doświadczenie w OOP. Pojawiło mi się takie pytanie: kiedy używac klasy
    z samymi statycznymi metodami a kiedy wzorca sigleton?

    Singleton ma sens wtedy, gdy obiekt ma implementować zadany interfejs. Wtedy
    singleton zwraca jeden egzemplarz obiektu klasy pochodnej.
    Jak często taka sytuacja występuje? Trudno powiedzieć. Przykładem z biblioteki
    standardowej są obiekty cin, cout i cerr, które istnieją w jednym egzeplarzu i
    realizują interfejsy istream/ostream.
    Dobrym przykładem mogą być też różne biblioteki do logowania, gdzie jest jakiś
    interfejs loggera i jakaś funkcja, która zwraca ten "jeden jedyny" (np. root logger
    albo jak go tam nazwiemy), co nie wyklucza też istnienia wielu innych,
    implementujących ten sam interfejs.

    Natomiast jeśli nie ma potrzeby realizowania zadanego interfejsu, to singleton tylko
    plącze się między nogami. Funkcje statyczne też się plączą. Napisz po prostu funkcję,
    której implementację umieścisz w osobnym pliku a jej stan zdefiniujesz w nienazwanej
    przestrzeni nazw. Coś takiego:

    // counter.h:
    int getNextValue();


    // counter.cpp:
    namespace
    {
    int nextValue = 0;
    }

    int getNextValue() { return nextValue++; }


    I tyle.

    --
    Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: