|
PHP PHP aplikacije, Smarty, PEAR |
|
Alati teme | Način prikaza |
|
21. 03. 2013. | #1 |
expert
Grand Master
Datum učlanjenja: 11.04.2010
Poruke: 998
Hvala: 141
959 "Hvala" u 153 poruka
|
Kakve veze ima nečiji komentar? Podforum je PHP i spominješ Singleton. Možeš li navesti i jednu (opravdanu) primjenu tog patterna?
http://www.phparch.com/2010/03/stati...hoose-neither/ http://www.slideshare.net/go_oh/sing...r-applications ^ Oni imaju više od 18 godina ako nešto znači. |
21. 03. 2013. | #2 | |
profesionalac
Professional
|
Citat:
Necu da pricam da je Singleton los, i ja ga izbegavam ali nemoj ga porediti sa DI. Opravdana primena je kada zelim globalni pristup objektu, i zelim da osiguran da ce samo jedna isntanca biti kreirana. U PHP jeziku nema problema sa Singletonom, kao sto je to slucaj u konkuretnim sistemima sa više niti gde može doći do problema kada više pozivaju u isto vreme Singleton, pa se bespotrebno kreira više objekata. Za ove slučajeve postoje drugi paterni koji se u ovim slučajevima koriste. Koji je dobar razlog da bi izbegavali Singleton ?
Koji je razlog izbegavanja statičkih ?
Jel imate nešto da dodate ali konkretno protiv SIngletona i statičkih ? Webarto ovo sa DI je bilo potpuno nekonstruktivno, ako možeš navedi neki konstruktivan i valjan razlog osim ovih koje sam ja naveo. Čak se u ovoj prezentaciji koju si linkovao navodi da treba koristii Buldere i Factory za kreiranje objekata umesto SIngletona, ne DI. Poslednja izmena od Djuki : 21. 03. 2013. u 10:55. |
|
"Hvala" Djuki za poruku: |
21. 03. 2013. | #3 | |
profesionalac
Qualified
Datum učlanjenja: 21.06.2007
Poruke: 166
Hvala: 27
42 "Hvala" u 23 poruka
|
Citat:
Trenutno radim na app koja ima oko 1200 klasa. Svaka klasa se nalazi u posebnom fajlu. Bice ih jos puno posto je projekat u ranoj fazi razvoja. Ni na jednom mestu nemam singleton klase, ali imam oko 50tak "single" instanci klase. Dakle samo jedna sme da se instancira tokom requesta - upravo sto radi i singleton. Sve ovo lepo radi samo zbog DI-a. I nemam potrebe za pristup globalnom objektu nigde, zato sto objekat koji ima potrebe za tako necim, dobija taj "globalni" objekat injectovan kroz DI mehanizam. //EDIT I nijednu rec static takodje nemamo u kodu.
__________________
Poslednja izmena od _korso_ : 21. 03. 2013. u 11:18. |
|
21. 03. 2013. | #4 |
profesionalac
Professional
|
Koji IoC/DI biblioteku koristiš ?
|
|
|