Patrón Proxy — Ejemplo Práctico

PUBLICADO: 2026-08-17
AUTOR: MANUEL PRIETO
Patrones de Diseño

El patrón Proxy controla el acceso a un objeto costoso, sin cambiar su interfaz.

1. El Problema de Partida

getAllMdxFiles(dir) recorre recursivamente el filesystem con fs.readdirSync. Durante generateStaticParams, generateMetadata y el render de cada página, Next.js invoca esta función decenas de veces para la misma colección, repitiendo lecturas de disco idénticas en cada build (ver también Patrón Singleton que resuelve un problema similar con instancia única).

2. La Solución Proxy

3. Uso — misma interfaz, cero cambios en el cliente

4. Ventajas

  • Transparente para el cliente: generateStaticParams, generateMetadata y el render llaman igual que antes.
  • Una sola lectura de disco por directorio durante todo el build, en vez de una por cada llamada.
  • Reversible sin riesgo: si el proxy diera problemas, basta con volver a importar getAllMdxFiles directamente.