Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.lang.php > #15695
| Newsgroups | pl.comp.lang.php |
|---|---|
| From | Wojciech Bancer <wojciech.bancer@gmail.com> |
| Subject | Re: Dobre praktyki |
| References | (9 earlier) <p4f8p3$tfb$1@node1.news.atman.pl> <slrnp6oqo7.g5g.wojciech.bancer@pl-test.org> <p4hrvu$ctn$1@node2.news.atman.pl> <slrnp6p0qc.gpr.wojciech.bancer@pl-test.org> <p4iev1$uic$1@node2.news.atman.pl> |
| Organization | None |
| Date | 2018-01-27 20:35 +0100 |
| Message-ID | <slrnp6pl4l.mtr.wojciech.bancer@pl-test.org> (permalink) |
On 2018-01-27, Marek S <precz@spamowi.com> wrote:
[...]
>> Różnica jest taka, że zależności dostarcza odpowiedni
>> manager, i kod który wykorzystuje te zależności nie ma
>> odpowiedzialności w której musi sobie daną zależność
>> sam "pobrać" - co jest najczęstszą wadą w projektach
>> opeartych o prosty singleton.
>
> Ok, to może inaczej - pójdźmy piętro wyżej. Czym jest zatem ten manager?
> Czyż nie singletonem?
A jest powód by był singletonem?
> To co chcę powiedzieć, to to, że zawsze na szczycie aplikacji jest jakiś
> obiekt "guru".
Ale to jest powiedzmy kernel aplikacji, który postępuje wg pewnego ustalonego
sposobu. Gdzie tu widzisz potrzebę na singletona?
> Czy nazwiemy go tak czy siak, to i tak będzie sobie
> istniał jako byt zainicjowany na początku, z którego istnienia czerpią
> korzyści inni. Pojęcia leksykalne są czasem rozmyte.
Ja widzę różnicę:
<?php
class PobieramZBazy() {
___construct($cn) { $this->cn = $cn; }
public getCostam() {
return $this->cn->query(...);
}
}
vs
class PobieramZBazy() {
public getCostam() {
$cn = JakisGlobalnyCusik::pobierzPolaczenie();
return $cn->query(...);
}
}
Tylko tyle i "aż" tyle, że to pierwsze się łatwiej testuje,
bo nie trzeba kombinować ze sztucznym mockowaniem statycznych
metod, tylko można sobie wstrzyknoć co potrzeba w kontrolerze.
Czyste i eleganckie. Oczywiście jak masz dobre zarządzanie
zależnościami, np. jak w Symfony2+.
A w 90% przypadków jakie widziałem, to Wielbiciele Singletonów
potrafili pisać masywną ilość metod statycznych, bo skoro "to
tak fajnie działa w przypadku singletona, to piszmy sobie
skróty" :P
--
Wojciech Bańcer
wojciech.bancer@gmail.com
Back to pl.comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Dobre praktyki Roman Tyczka <noemail@because.no> - 2018-01-18 13:37 +0100
Re: Dobre praktyki Lemat <#@lemat.priv.pl> - 2018-01-18 18:30 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-25 20:31 +0100
Re: Dobre praktyki Lemat <#@lemat.priv.pl> - 2018-01-25 20:44 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-25 20:48 +0100
Re: Dobre praktyki Roman Tyczka <noemail@because.no> - 2018-01-25 21:22 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-25 23:55 +0100
Re: Dobre praktyki Lemat <#@lemat.priv.pl> - 2018-01-26 05:48 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-26 13:48 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-26 00:02 +0100
Re: Dobre praktyki Roman Tyczka <noemail@because.no> - 2018-01-26 23:16 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-27 13:09 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-27 23:04 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-27 23:07 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-27 23:22 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-27 23:31 +0100
Re: Dobre praktyki artiun <artiun@spam.wp.pl> - 2018-01-26 00:06 +0100
Re: Dobre praktyki denat 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2018-01-18 20:03 +0100
Re: Dobre praktyki Rafal Podsiadly <spinacz24@gmail.com> - 2018-01-21 05:03 -0800
Re: Dobre praktyki Roman Tyczka <noemail@because.no> - 2018-01-21 22:38 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-22 21:56 +0100
Re: Dobre praktyki Rafal Podsiadly <spinacz24@gmail.com> - 2018-01-24 08:16 -0800
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-24 17:20 +0100
Re: Dobre praktyki Rafal Podsiadly <spinacz24@gmail.com> - 2018-01-24 21:30 -0800
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-25 20:46 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-25 21:10 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-26 00:03 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-26 00:26 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-26 14:00 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-27 13:05 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-27 13:40 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-27 14:49 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-27 19:04 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-27 20:35 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-27 21:59 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-27 23:02 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-27 23:35 +0100
Re: Dobre praktyki Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-01-28 00:24 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-27 22:49 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-27 23:08 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-27 23:26 +0100
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-27 23:56 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-28 00:34 +0100
Re: Dobre praktyki Roman Tyczka <noemail@because.no> - 2018-01-24 20:29 +0100
Re: Dobre praktyki Rafal Podsiadly <spinacz24@gmail.com> - 2018-01-24 21:51 -0800
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-27 22:43 +0100
Re: Dobre praktyki Roman Tyczka <noemail@because.no> - 2018-01-29 08:48 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-30 20:37 +0100
Re: Dobre praktyki Borys Pogoreło <borys@pl.edu.leszno> - 2018-01-27 22:45 +0100
Re: Dobre praktyki Rafal Podsiadly <spinacz24@gmail.com> - 2018-01-28 07:08 -0800
Re: Dobre praktyki Marek S <precz@spamowi.com> - 2018-01-25 20:36 +0100
csiph-web