DI a předávání závislostí modelové vrstvě
- RA
- Člen | 6
Zdravím,
v OOP dělám dost krátce a řeším takovou věc:
V modelové vrstvě mám třídy, které potřebuju instanciovat. Ty pak volají statickou třídu, která zpracuje jejich property a ta mezitým volá statickou třídu, kterej úkol je logovat akce do souboru. „Problém“ je, že potřebuju logovat userID.
Otázka zní – jak předat závislost, abych nemusel přes 3 volání předávat objekt Nette\Security\User z různych míst z různých presenterů?
Jak teď nad tým přemýšlím tak bych mohl udělat třídu, které se objekt Users předá/injektuje a ta může mít metody, které budou vracet instance/reference těch tříd. Teď nevím, jestli je to podstata toho čemu vy říkáte „továrničky“.
EDIT: Po krátkém testu se ukázalo, že to síce funguje, ale jelikož je třída vytvořena, musí se předat dál její reference.
Budu vděčný, pokud někdo poradí lepší postup.
Editoval RA (16. 10. 2014 9:03)
- David Matějka
- Moderator | 6445
Ty pak volají statickou třídu, která zpracuje jejich property a ta mezitým volá statickou třídu, kterej úkol je logovat akce do souboru.
Nedelej tyto tridy staticke a registruj si je jako sluzby, ktere budes injectovat