![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 90 Pomógł: 4 Dołączył: 5.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam, postanowiłem przetestować czas wykonywania skryptu dla klasy skonstruowanej wg. wzorca Singleton, wywoływanej poprzez metode statyczną która decyduje czy należy tworzyć nowy obiekt klasy. Wywoływałem tą klasę również w tradycyjny sposób. Czas wykonywania skryptu wyglądał
następująco : Kod Skrypt wykonany w czasie: 1.485986 sekundy (tradycyjnie wywołany obiekt) Skrypt wykonany w czasie: 2.203427 sekundy(wg. singleton) Byc moze zle implementuje ten wzorzec w swojej aplikacji wiec podaje poniżej kod :
Klasę wywołuję wg singleton tym kodem:
A tak tworze obiekt klasy w tradycyjny sposób(wg. moich testów ten sposób jest szybszy)
Czy może mi ktoś wyjaśnić dlaczego kod wg singleton jest wykonywany wolniej i kiedy warto w swoich aplikacjach implementować ten wzorzec ? Z góry dzieki za pomoc. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Dodam tylko, że funkcjonalność tego wzorca jest na tyle duża, że pomija się raczej takie małe wady. O ile tę małą różnicę można nazwać wadą, bo wyobraź sobie jakie narzuty na czas wykonywania, miałoby przekazywanie obiektów przez parametr/referencję - bo właśnie temu singleton zapobiega.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 20:59 |