DI vs Lazy loading, Accessor
- David Ďurika
- Člen | 328
Zdravim, po precitani https://phpfashion.com/…lazy-loading ma napadlo ci by sa do configu nedalo zapisal nico taketo:
services:
fooAccessor:
accessor: FooAccessor
class: Foo(@param)
setup:
- bar()
a potom prezenter:
<?php
public function inject(FooAccessor $fa) {
$this->fa = $fa;
}
public function actionShow() {
$foo = $this->fa->get(); // a az v teraz by sa vytvorila instancia objektu Foo
// s parametramy + by sa tam zavolali aj tie satup nastavenia kt. som definoval v configu
}
?>
je toto mozne spravit v sucastnom nette? ak nie bolo by fajn spravit to do buducna
Editoval achtan (26. 10. 2012 10:44)
- David Ďurika
- Člen | 328
no to ani nie. lebo ten setup sa zavola nad instanciu FooAccessor-u a nie nad Foo, a dlasia vec, ze sa programator vyhne zbytocnemu pisaniu Accessor-ov pre kazdu triedu
- Jan Tvrdík
- Nette guru | 2595
achtan wrote:
no to ani nie. lebo ten setup sa zavola nad instanciu FooAccessor-u a nie nad Foo
Což není problém, protože ten FooAccessor
napíšeš
pořádně a tu metodu si tam wrapneš.
- David Ďurika
- Člen | 328
Jan Tvrdík napsal(a):
neviem ci som ta spravne pochopil, ale mne ide o to ze ked mam moznost napisat nieco do configu na 3 riadky alebo napisat novu classu + do configu napisat 2 riadky, tak si vyberam tu prvu moznost
- Patrik Votoček
- Člen | 2221
achtan napsal(a):
neviem ci som ta spravne pochopil, ale mne ide o to ze ked mam moznost napisat nieco do configu na 3 riadky …
Takovou možnost nemáš protože Nette accessory neumí generovat
- David Ďurika
- Člen | 328
Patrik Votoček napsal(a):
a neslo by na to pouzit https://doc.nette.org/cs/configuring#… ? este som nerobil nikdy rozsirenie kontajneru takze neviem ci by s tym slo alebo nie…
- Patrik Votoček
- Člen | 2221
Milo napsal(a):
Já myslel, že všechny service v kontejneru jsou lazy.
Ano jsou. Dokud je někam nepředáváš. To co on chce je ale „EXTRA-LAZY“ (inicializace služby až při použití).