-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!opal.futuro.pl!news.internetia.pl!news.
nask.pl!news.nask.org.pl!goblin1!goblin.stu.neva.ru!postnews.google.com!glegrou
psg2000goo.googlegroups.com!not-for-mail
From: Maciej Sobczak <s...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: kiedy singleton, a kiedy statyczne metody?
Date: Fri, 13 Jul 2012 22:30:55 -0700 (PDT)
Organization: http://groups.google.com
Lines: 39
Message-ID: <f...@g...com>
References: <e...@g...com>
NNTP-Posting-Host: 46.171.80.166
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1342243855 26135 127.0.0.1 (14 Jul 2012 05:30:55 GMT)
X-Complaints-To: g...@g...com
NNTP-Posting-Date: Sat, 14 Jul 2012 05:30:55 +0000 (UTC)
In-Reply-To: <e...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=46.171.80.166;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
User-Agent: G2/1.0
Xref: news-archive.icm.edu.pl pl.comp.programming:198453
[ ukryj 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
Następne wpisy z tego wątku
- 14.07.12 11:09 Adam Wysocki
- 14.07.12 23:27 Maciej Sobczak
Najnowsze wątki z tej grupy
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-07-30 Taka ciekawostka pożarowa :)
- 2025-07-30 Danina dla artystów, tworców i producentów od zakupu sprzętu elektronicznego.
- 2025-07-30 Białystok => Software Engineer .Net <=
- 2025-07-30 Gdańsk => Programista Delphi <=
- 2025-07-30 Kolejni bezrobotni inżynierowie na zasiłkach...
- 2025-07-30 Rzeszów => International Freight Forwarder <=
- 2025-07-30 Warszawa => Konsultant Wiodący SAP PP <=
- 2025-07-30 MILLER ZAORAŁ PRO-UKRAIŃSKIEGO REDAKTORA
- 2025-07-29 "cywilny przemysł stoczniowy w USA praktycznie nie istnieje"
- 2025-07-29 Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- 2025-07-29 Re: PLL LOT na pokładzie zemdlało kilku pasażerów, a linie lotnicze nie zapewniły nawet podstawowego wsparcia - choćby szklanki wody.
- 2025-07-29 Re: Podkreślają też wielką szkodliwość zdrowotną wiatraków, które usytuowane bardzo blisko siedlisk ludzkich mają negatywny wpływ na zdrowie ludzkie".
- 2025-07-29 Re: bełkot reklamowy eSIM, których nikt nie chce, bo są niebezpieczne.
- 2025-07-29 Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- 2025-07-29 Warszawa => IT Data Analyst (Power BI) <=