![]() |
![]() ![]() |
![]() |
-asdad- |
![]()
Post
#1
|
Goście ![]() |
Mam taki kod
I umieszczam go w kilku klasach, nie podoba mi się to ponieważ jest on powielany, a nie będę przecież wczytywał go w każdej klasie przez include, czy jest jakiś inny sposób, aby każda klasa korzystała z tego kodu, a on sam żeby się w nich nie powtarzał? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
To ma być singleton, tak?
-------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
-Gość- |
![]()
Post
#3
|
Goście ![]() |
Tak. Chyba że znasz jakiś inny spsoób, aby nie powielać tego kodu w każdej klasie, ale żeby możnabyło odwołać się przez NAzwaKlasy::getInstance
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Napisz lepiej jakie to klasy, do czego mają służyć i dlaczego singleton
![]() -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
-Gość- |
![]()
Post
#5
|
Goście ![]() |
Są to klasy Uri, Router czy Config ... nie ma potrzeby aby były wykonywane przez new Klasa, więc potrzeba tylko 1 instanicji. Każda z tych klas ma w sobie powyższy kod i pytanie czy on musi tam być czy nie da się tego jakoś 'dziedziczyć'
|
|
|
-Gość- |
![]()
Post
#6
|
Goście ![]() |
NIkt nie wie?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 348 Pomógł: 26 Dołączył: 8.10.2008 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Singletona używa się gdy potrzebujesz wyłącznie jednej instancji całego (a przynajmniej więcej niż jednej metody) obiektu danej klasy na cały kod. Jeżeli chcesz mieć dostęp do metody za pomocą obiekt::metoda() wystarczy użyć metody statycznej.
W odpowiedzi na Twoje pytanie: nie nie musisz wklejać tego kodu do każdej klasy, ale z założenia tak właśnie robi się prawidłowo (anty)wzorzec singleton. Ten post edytował Adi32 24.12.2011, 12:19:05 -------------------- Wolałem języki z rodziny C ale poszedłem na łatwizne...
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 19:09 |