Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V  < 1 2  
Reply to this topicStart new topic
> PHP5 i Singletony
Ozzy
post 18.03.2004, 19:20:04
Post #21





Grupa: Zarejestrowani
Postów: 204
Pomógł: 0
Dołączył: 26.12.2003
Skąd: Rzeszów

Ostrzeżenie: (0%)
-----


http://www.phppatterns.com/index.php/artic...ticleview/6/1/1
http://www.phppatterns.com/index.php/artic...cleview/75/1/1/
http://www.sitepoint.com/article/1192/9 - PHP5

i jeszcze php Solutions najnowszy (artykuł o singletonach jest na końcu)
Go to the top of the page
+Quote Post
hawk
post 18.03.2004, 23:42:55
Post #22





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Formalnie rzecz biorąc, singletony nie są potrzebne i da się zrobić to samo na zmiennych "klasowych", czyli tak naprawdę na zmiennych globalnych (jedyna różnica, że zamiast $bar piszemy Foo::$bar). Ale zmienne globalne, jak wiadomo, są brzydkie i bebe, i dlatego w OOP stosuje się singletony.

Zresztą, singletony mogą teoretycznie trochę więcej. Można - choć jest to trudne - zrobić singleton który można inicjować parametrem, używając wyjątków i new (ale to w Javie widziałem sad.gif ). Można również - choć to również trudne, z uwagi na pokręcony proces inicjacji obiektu - próbować dziedziczenia.

Można wreszcie - i to jest chyba najważniejsze - przekazywać sobie referencje do obiektu singletonowego. Jeżeli mamy singleton Foo implementujący interfejs Bar, to możemy sobie przekazywać referencję do Foo (uzyskaną przez Foo::getInstance() ) i nie zastanawiać się co to jest - implementuje Bar i to wystarcza.

Czyli singleton jest odpowiednikiem kodu globalnego w OOP, i kilka rzeczy specyficznych dla OOP potrafi "dodatkowo" zrobić.

A poza tym, wielkie klasy z samymi metodami statycznymi są oznaką amatorstwa, a mały singleton tu i ówdzie wygląda profesjonalnie smile.gif .
Go to the top of the page
+Quote Post
Ozzy
post 19.03.2004, 08:02:40
Post #23





Grupa: Zarejestrowani
Postów: 204
Pomógł: 0
Dołączył: 26.12.2003
Skąd: Rzeszów

Ostrzeżenie: (0%)
-----


Cytat
A poza tym, wielkie klasy z samymi metodami statycznymi są oznaką amatorstwa, a mały singleton tu i ówdzie wygląda profesjonalnie .


Tak też myslałem:)
Go to the top of the page
+Quote Post

2 Stron V  < 1 2
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.03.2024 - 12:09