Lección 3 de 16 · Lectura y práctica
Server Components y Client Components en profundidad
Server Components y Client Components en profundidad Esta leccion pertenece al curso Desarrollo Web Full Stack con Next.js y esta pensada para que avances con criterio profesional, no solo con teoria. Primero entiende el.
Del concepto a la práctica
Taller de esta lección
La frontera servidor-cliente debe seguir la interacción, no el tamaño visual del componente. Una lista de reseñas puede ser de servidor porque solo presenta datos; un selector de valoración necesita estado y eventos en el cliente. Separarlos reduce JavaScript enviado y hace visible dónde se toman decisiones.
Ejemplo resuelto
// components/Selector.tsx
'use client';
import { useState } from 'react';
export function Selector() {
const [valor, setValor] = useState(1);
return <button onClick={() => setValor(actual => actual + 1)}>Cantidad: {valor}</button>;
}La página de servidor importa Selector, pero conserva la consulta y el texto estático.
Un Client Component puede producir HTML inicial en el servidor y luego hidratarse; “cliente” identifica la frontera de interacción y dependencias, no significa ausencia de HTML inicial. Los secretos y conexiones de base de datos se quedan en módulos de servidor y no se pasan por props al selector.
Pruébalo
Lista tres datos que solo se leen.
Separa un único control que cambie en pantalla.
Pasa por props solo valores serializables.
Prueba el control con dos clics.
Comprueba tu resultado
Error frecuente: usar useState en un componente de servidor. Corrección: crea una frontera cliente explícita y pequeña.
Ejercicio: inicia el selector en 1 y pulsa dos veces; debe mostrar Cantidad: 3, mientras el nombre del producto sigue procediendo del componente de servidor.

Mapa de prácticaEl servidor puede obtener datos y producir el HTML inicial. El navegador muestra el resultado y ejecuta las interacciones que necesitan estado local. Mantén las claves sensibles en el servidor y define qué parte se ejecuta en cada entorno.
Ver la infografía en tamaño completo ↗Fuentes para profundizar
Server Components y Client Components en profundidad
Esta leccion pertenece al curso Desarrollo Web Full Stack con Next.js y esta pensada para que avances con criterio profesional, no solo con teoria. Primero entiende el concepto, despues aplicalo en una situacion concreta y finalmente deja evidencia de lo que aprendiste.
Objetivo practico
Al terminar, deberias poder explicar el tema con tus palabras, reconocer cuando usarlo y construir una version simple que sirva como base para un proyecto real.
Pasos recomendados
- Lee el concepto y escribi una definicion breve.
- Identifica un caso de uso laboral donde aparezca este problema.
- Construye un ejemplo pequeno y documenta las decisiones.
- Compara tu resultado con el checklist de la leccion.
Sigue con Desarrollo Web Full Stack con Next.js
Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.
Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.