jaka je rychlost latte proti php
- spiider
- Člen | 162
Zdravim, chci se jenom zeptat jak je to s rychlosti sablonovaciho systemu latte. Napr. tyto kody
<p>{$data->fname}</p>
<p>{$data->lname}</p>
proti:
<p><?= $data->fname ?></p>
<p><?= $data->lname ?></p>
Proti sablonovacim systemum nic nemam, ale nezpomaluji pri slozitejsich vecech web nez vse prohlizec prekompiluje?
Diky
- mkoubik
- Člen | 728
Kompiluje se to na straně serveru a vždy jen jednou. Kód
<p>{$data->fname}</p>
se zkompiluje do php
<p><?php echo Nette\Templating\Helpers::escapeHtml($data->fname, ENT_NOQUOTES) ?></p>
a to se includne.
Takže kromě toho, že je to v podstatě stejně rychlé, tak se to
i správně escapuje (narozdíl od php kódu který jsi napsal ty).
- Nox
- Člen | 378
Tak určitě zabezpečení, Latte ti správně a automaticky upraví výstup podle toho, kam přesně v šabloně proměnnou vypisuješ (lze manuálně vypsat bez zabezpečení přidáním hrozícího !), včetně CSS a JavaScriptových kontextů.
Subjektivně mnohem přehlednější, intuitivnější.
Zjednodušováky jako automatický iterátor, sep, breakIf…
Případně tě taky víc tlačí do toho mít v šabloně jen čistě výstupní záležitosti a žádnou logiku, ona použít jde a celkem bez problému, ale mnohem míň to k tomu člověka svádí.
Nevýhoda je snad jen ta trocha učení, ale Latte je velmi intuitivní, je to hned. Osobně si ani nepamatuju, že bych kdy potřeboval lézt do zkompilovaného kódu, pokud vím tak obrazovka Tracy ti zobrazuje chybu přímo v původní Latte šabloně. Nevýhody mě moc nenapadají
Editoval Nox (7. 5. 2013 10:58)