Nette 2.3 – lazy loading dependencies
- DavidTheNewbie
- Člen | 79
Ahoj. Rad bych pozadal o radu. Mam tridu:
class Translator extends Object implements ITranslator
{
/**
* Construct routines
*
* @param IDictionary $dictionary
* @param Request $request
*/
public function __construct(IDictionary $dictionary, Request $request = null)
{
$this->dictionary = $dictionary;
}
/**
* @see \Nette\Localization\ITranslator::translate()
*/
public function translate($message, $count = NULL, $dateFormat = self::DEFAULT_DATE_FORMAT)
{
...
}
}
Rad bych vyuzil lazy-loading, tj. zavislost konstruktoru Dictionary nenacital v cele sve obludne velikosti, avsak pouze tzv. on-demand. Lze se inspirovat 5 let starym clankem https://phpfashion.com/…lazy-loading (napr. tzv. accessor), anebo se to ve 2.3 resi jiz (nejak) automaticky?
Editoval DavidTheNewbie (27. 2. 2017 22:29)
- David Matějka
- Moderator | 6445
accessor je stale aktualni reseni s tim, ze ten uvedeny interface staci registrovat v configu a nette vygeneruje implementaci. funguje to podobne jako generovane tovarny s tim rozdilem, ze se ta metoda jmenuje get.
ale lepsi by bylo, kdyby „Dictionary“ nebylo narocne vytvorit. co je na nem tak obludne velike?
- DavidTheNewbie
- Člen | 79
David Matějka napsal(a):
accessor je stale aktualni reseni s tim, ze ten uvedeny interface staci registrovat v configu a nette vygeneruje implementaci. funguje to podobne jako generovane tovarny s tim rozdilem, ze se ta metoda jmenuje get.
ale lepsi by bylo, kdyby „Dictionary“ nebylo narocne vytvorit. co je na nem tak obludne velike?
Mnozstvi prekladovych klicu a jejich hodnot…