Saltar al contenido
Framework Ecosystems LabsUn contrato, muchos ecosistemas, la misma prueba.

Por qué sí y por qué no — Las cuatro estrategias de renderizado#

⬅️ Clase 093 · 📚 Parte 7

Por qué sí Por qué no Qué se paga
Astro Por omisión no hay servidor: una página es un archivo salvo que pida lo contrario Sacar una página al servidor obliga a añadir un adaptador al proyecto entero Una línea por página, y recordar ponerla
Next.js El único cuyo constructor publica la estrategia de cada ruta: y ƒ en la salida Leer una cookie convierte la ruta en dinámica sin declararlo Auditar el proyecto construyéndolo, no leyéndolo
SvelteKit La estrategia cambia sin tocar el componente: load es el único que se entera El adaptador manda: adapter-static anula lo que digan las rutas Dos sitios donde mirar cuando algo no sale estático
Nuxt routeRules deja leer la arquitectura entera de un vistazo La decisión queda lejos de la pantalla, y se desincronizan Una tabla que hay que mantener a mano
Remix Una sola forma de hacerlo: no hay modos, ni decisión que documentar No hay generación al construir, y punto Resolver lo estático fuera, con caché y Cache-Control

🧭 Lo que este contrato no puede probar#

💡 Lo que hay que llevarse#

La pregunta de esta clase no es cuál de las cuatro es mejor. Es cuál es mejor para esta pantalla, y hay tres datos que la contestan casi siempre:

  1. ¿El contenido es el mismo para todo el mundo? Si no, se cae lo estático.
  2. ¿Con qué frecuencia cambia? Si cambia menos que los despliegues, estático; si cambia a diario y hay muchas páginas, revalidado; si cambia a cada segundo, servidor.
  3. ¿Importa el primer pintado? Si la pantalla está detrás de un acceso, normalmente no, y el cliente sale barato.

Ninguno de los tres es una decisión de framework. Son decisiones del producto, y por eso esta clase abre la parte: los cinco metaframeworks existen para que esa decisión se pueda tomar por pantalla en lugar de por proyecto.

Y hay una lección lateral, que es de método y vale para todo el programa. La diferencia entre estático y servidor no se ve mirando una respuesta: las dos traen exactamente el mismo HTML. Se ve pidiendo dos veces y comparando un valor que cambie. Cuando dos cosas parecen idénticas y sabes que no lo son, la salida casi nunca es mirar más de cerca — es construir la observación que las separa.

Ese es el mismo movimiento de la clase 025 con las cachés y el de la 062 con la revalidación, y aquí queda aplicado a la pieza más visible de todas: la página.

Fuentes#