Performance: Why templates separate presentation from logic
MEDIUM IMPACT
Separating presentation from logic improves page load speed by reducing complex computations during rendering and minimizes DOM updates.
<?php $formattedUsers = array_map(fn($u) => strtoupper($u->name), $users); ?> @foreach($formattedUsers as $name) <div>{{ $name }}</div> @endforeach<?php foreach($users as $user) { echo "<div>" . strtoupper($user->name) . "</div>"; } ?>
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Logic inside template | High due to complex HTML | Multiple reflows if layout changes | Higher paint cost from complex DOM | [X] Bad |
| Logic separated from template | Simpler DOM structure | Single reflow after render | Lower paint cost | [OK] Good |