czyli (anty)wzorzec Singleton … czyli (anty)wzorzec Singleton
Bartek „Koziołek” Kuczyński Programista – artysta http://koziolekweb.pl
Historia Motywacja Implementacja – UML Zalety Wady Wzorzec czy antywzorzec?
Skąd wziął się Singleton FORTRAN i inni C i zmienna globalna C++ i zmienna globalna Problem ze sposobem dostępu Dostęp przez wartość Dostęp przez referencję
Po co nam Singleton Posiadanie jednej i tylko jednej instancji Chęć ograniczenia używanych zasobów Potrzeba ograniczenia używanych zasobów SPC – Single Point of Contact
Implementacja Prywatny konstruktor Nadpisany konstruktor kopiujący Prywatne pole przetrzymujące referencję do samego siebie Publiczną metodę dostępową.
Zalety Pojedyncza instancja Ograniczeni ilości potrzebnych zasobów Prostota implementacji
Wady Nierozszerzalność Trudne testowanie Łamanie zasad SRP – klasa poza biznesem odpowiada za tworzenie siebie OCP – trudne rozszerzanie Mityczność – php, java nie mają prawdziwych singletonów.
Wzorzec – antywzorzec
http://en.wikipedia.org/wiki/Singleton_pattern http://4programmers.net/Inżynieria_Oprogramowania/Wzorce_projektowe/Singleton http://www.google.pl/search?q=singleton+pattern http://koziolekweb.pl