Querido cliente, te estoy dejando

Rate this content
Bookmark

Con los componentes del servidor de React y las nuevas capacidades de suspense SSR de React, tenemos un cambio de paradigma en el mundo de la representación del lado cliente/servidor. El péndulo que comenzó en páginas HTML simples, rápidamente se inclinó hacia la representación completamente del lado cliente, ahora está volviendo al lado del servidor. Los marcos emergentes como Next.js y Remix dan inicio a una nueva era de desarrollo web, en la que la representación del lado servidor es un ciudadano de primera clase. En esta charla profundizaremos en esas características de React, hablaremos sobre las prácticas más avanzadas en cuanto a la representación del servidor y tal vez vislumbremos el emocionante futuro de las relaciones de pila completa entre el front-end y el back-end.

FAQ

La renderización del lado del servidor es un paradigma donde el servidor se encarga de generar la estructura de marcado y enviarla al cliente, quien ejecuta la lógica de interacción. Esto permite que las páginas web se carguen más rápido, ya que el cliente recibe el contenido ya procesado desde el servidor.

Es importante debido a la necesidad de mejorar los tiempos de carga y la interactividad de las páginas web, especialmente con las crecientes expectativas de rendimiento y los estándares de SEO que requieren que el contenido sea accesible y rápido de indexar por los motores de búsqueda.

Resuelve problemas de velocidad de carga, optimización SEO y mejora la experiencia del usuario al entregar contenido pre-renderizado desde el servidor, lo que acelera la visualización en el cliente.

La tecnología de renderización ha evolucionado desde la renderización puramente en el servidor con tecnologías como PHP, hacia la renderización en el cliente con frameworks como React, y ahora de vuelta a enfoques modernos de renderización en el servidor para manejar aplicaciones más complejas y mejorar el rendimiento.

La hidratación es el proceso por el cual el cliente toma el marcado generado por el servidor y lo convierte en una página web dinámica e interactiva, usualmente añadiendo eventos y comportamientos con JavaScript. Es un paso crítico en técnicas como SSR (Server-Side Rendering) para hacer interactivo el contenido estático.

Los componentes de servidor en React permiten que ciertas partes de una aplicación se rendericen en el servidor sin enviar todo el código necesario al cliente. Esto reduce los tiempos de carga y la cantidad de datos transferidos, mejorando la eficiencia y el rendimiento de las aplicaciones web.

Next.js es una framework que facilita tanto la generación de sitios estáticos como la renderización del lado del servidor, ofreciendo funciones como getStaticProps y getServerSideProps. Esto permite construir aplicaciones optimizadas tanto en tiempo de compilación como en tiempo real, mejorando la escalabilidad y rendimiento.

El renderizado estático genera páginas en el momento de la compilación y es ideal para contenidos que no cambian frecuentemente, mientras que el renderizado dinámico genera páginas en tiempo real, lo que permite personalizar el contenido según las interacciones o solicitudes del usuario.

Liad Yosef
Liad Yosef
21 min
21 Jun, 2022

Comments

Sign in or register to post your comment.

Video Summary and Transcription

Liad Yosef analiza la importancia y evolución de la representación del lado servidor, destacando sus beneficios como el rendimiento mejorado y el SEO. Explora diferentes estrategias de representación y los desafíos de la hidratación en React. Presenta SuspenseSSL en React 18 como una solución para obtener datos de forma anticipada e hidratar selectivamente componentes. También menciona React Server Component como un cambio revolucionario para reducir el tamaño del paquete en la representación con React.

Available in English: Dear Client, I'm Leaving You

1. Introducción a la Renderización del Lado del Servidor

Short description:

En esta parte, Liad Yosef se presenta a sí mismo y al tema de la charla, que es la renderización del lado del servidor. Menciona la importancia de discutir este tema y hace referencia a una cita de Abraham Lincoln. También menciona que la charla se centrará en la renderización del lado del servidor en React.

Hola. Hola a todos. Gracias por asistir a mi charla. Soy Liad Yosef. Mi charla se llama Querido Cliente, Te Dejo. Vamos a hablar un poco sobre la renderización del lado del servidor, la renderización del lado del servidor, y todo lo que hay en medio. Así que soy Liad Yosef. Soy el arquitecto principal de front-end en Douda. Soy un entusiasta de la web y en mi tiempo libre también soy un astronauta analógico. Tengo el privilegio de participar en misiones analógicas en todo el mundo, me gusta mucho el espacio. Así que con esto en mente, convertiremos nuestra charla en algo así como una charla en modo oscuro, y será temática espacial. Entonces podrías preguntarte, ¿por qué necesitamos hablar sobre la renderización del lado del servidor? Abraham Lincoln dijo una vez que si tuviera ocho horas para cortar un árbol, pasaría seis afilando mi hacha, y Rick Sanchez agregó que el universo es mucho más complicado de lo que piensas. Así que prepárate para una aventura de 20 minutos en la madriguera del conejo de la renderización del lado del servidor, ¿y cómo lo abordamos en React? Así que es hora de maratón, y todos sabemos que preferimos ver Netflix en lugar de ver

2. Understanding Server-Side Rendering

Short description:

En esta parte, Liad Yosef discute el concepto de renderización del lado del servidor y su evolución a lo largo del tiempo. Explica la diferencia entre la renderización clásica del servidor, la renderización cliente-servidor y la nueva renderización del lado del servidor. Liad destaca las razones para utilizar la renderización del lado del servidor, como el mejor rendimiento, una mejor optimización para motores de búsqueda y la solución de problemas con la renderización del lado del cliente. También menciona la importancia de considerar criterios de rendimiento como el cambio de diseño acumulativo y la carga de contenido significativo. Además, hace referencia a una charla de Rich Harris sobre el impacto de las aplicaciones de una sola página en la web.

charlas técnicas. No es como si estuviéramos viendo a Dan Abramov en Netflix. Así que enmarcaré mi charla un poco como Netflix. Hay muchos temas para discutir. Puedes elegir rendimiento o hooks o La Casa de Papel, una web tres o un juego de cuadrícula, pero me enfocaré en las paredes del servidor. Paredes del servidor, eso es algo que necesitamos aprender. Necesitamos entender para realmente comprender la relación cliente-servidor. Y comenzaremos con una pequeña historia básica sobre las paredes cliente-servidor. Entonces, cuando hablamos de la renderización clásica del servidor, ¿de qué estamos hablando? En la renderización clásica del servidor, el enfoque común hace unos 15 o 20 años, el servidor genera una estructura de marcado y el cliente ejecuta la lógica de interacción. Puedes pensar en PHP o JSP o cualquier otra cosa con la que estés familiarizado. Entonces, en la renderización clásica del servidor, el navegador solicita al servidor que ensamble la página. El servidor ensambla la página en el lado del servidor, enviando el marcado plano al cliente y el cliente obtiene el marcado. Esa es la renderización clásica del servidor. Y si quieren hacer que su marcado sea interactivo, simplemente le piden al servidor que envíe el hito, el JavaScript, para hacerlo útil. Esa es la renderización clásica del servidor. En la renderización cliente-servidor, ese es un paradigma con el que comenzamos a trabajar hace unos 10 años, el cliente se encarga de generar la estructura de marcado y la lógica de interacción, como en React. Entonces, el cliente solicita ensamblar la página y el servidor simplemente envía un contenedor vacío y luego es responsabilidad del cliente solicitar a React o al código JavaScript para renderizarlo ellos mismos. React renderiza el marcado y si hay algo más que el cliente desee, pueden solicitar al servidor otro código JavaScript para renderizar la parte faltante. Esa es la renderización del lado del cliente. En la nueva renderización del lado del servidor, que es el paradigma con el que comenzamos a trabajar hace unos dos o tres o cuatro años el servidor se encarga de generar la estructura de marcado y el cliente se encarga de ejecutar la lógica de interacción. Espera, ¿qué? Quiero decir, hemos vuelto al punto de partida desde el PHP de hace 20 años hasta la renderización del lado del servidor de hoy. Bueno, debes recordar que React es un lenguaje de plantillas. Por lo tanto, también puedes usarlo en el servidor para hacer plantillas. Puedes preguntarte por qué. ¿Cuál es la razón de hacer renderización del lado del servidor? Bueno, en el pasado, cuando teníamos velocidades de red lentas y dispositivos lentos, teníamos que hacer todo en el servidor, ¿verdad? Porque el cliente no era lo suficientemente fuerte o potente como para renderizar. A medida que los dispositivos se volvieron más potentes y los clientes querían aplicaciones más complejas, trasladamos la renderización al cliente. Pero ahora, a medida que las redes se vuelven realmente rápidas y se envía mucho código complejo al cliente y nuestros estándares de carga se han vuelto más altos, queremos que las cosas se carguen mucho más rápido, tenemos que volver a trasladar la renderización al servidor. Si hablamos de rendimiento, esos son dos criterios que Google verifica en sus Core Web Vitals. Luego, el cambio de diseño acumulativo verifica qué sucede cuando el cliente renderiza el marcado, pero algo aparece de repente porque el cliente lo está renderizando incrementalmente, y luego haces clic en algo que no querías hacer clic. O la carga de contenido significativo, ¿cuánto tiempo tarda el cliente en obtener los datos para renderizar algo, lo cual es un problema en el mundo de la renderización insuficiente del cliente. El SEO también es un problema, porque cuando Google intenta indexar nuestra página, accede al servidor, solicita la página y si el servidor devuelve solo un contenedor vacío, Google no sabe cómo indexar nuestra página. Hay una charla muy buena de Rich Harris llamada `Las aplicaciones de una sola página arruinaron la web` y en general hay una muy buena charla en la esfera de Twitter o en la web sobre aplicaciones de una sola página versus aplicaciones de varias páginas, donde algunas personas dicen que las aplicaciones de varias páginas no cumplen con las expectativas que queremos y otras personas dicen que las aplicaciones de una sola página, debido a su carga lenta, no ofrecen

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Simplificando los Componentes del Servidor
React Advanced Conference 2023React Advanced Conference 2023
27 min
Simplificando los Componentes del Servidor
Top Content
Los Componentes del Servidor son posiblemente el cambio más grande en React desde su lanzamiento inicial, pero muchos de nosotros en la comunidad hemos tenido dificultades para entenderlos. En esta charla intentaremos desglosar las diferentes partes móviles para que tengas una buena comprensión de lo que está sucediendo bajo el capó, y exploraremos la línea entre React y los marcos que se construyen sobre él.
Explorando los fundamentos de los Componentes del Servidor React
React Day Berlin 2023React Day Berlin 2023
21 min
Explorando los fundamentos de los Componentes del Servidor React
Top Content
He estado desarrollando un marco minimalista para los Componentes del Servidor React (RSC). Esta charla compartirá mi viaje para entender profundamente RSC desde una perspectiva técnica. Demostraré cómo operan las características de RSC a un nivel bajo y proporcionaré ideas sobre lo que RSC ofrece en su núcleo. Al final, deberías tener un modelo mental más fuerte de los fundamentos de los Componentes del Servidor React.
Componentes del Servidor: La Epopeya de la Representación UX
React Summit 2023React Summit 2023
26 min
Componentes del Servidor: La Epopeya de la Representación UX
Los componentes del servidor, introducidos en React v18, ponen fin a estas limitaciones, permitiendo representar completamente los componentes de React en el servidor, en un formato de abstracción intermedio sin necesidad de agregar al paquete de JavaScript.Esta charla tiene como objetivo cubrir los siguientes puntos:1. Una divertida historia de cómo necesitábamos CSR y cómo SSR comenzó a ocupar su lugar2. ¿Qué son los componentes del servidor y qué beneficios aportan, como un tamaño de paquete de JavaScript de 0?3. Demostración de una aplicación simple utilizando representación en el lado del cliente, SSR y componentes del servidor, y análisis de las mejoras de rendimiento y comprensión de cuándo usar cada enfoque4. Mi opinión sobre cómo cambiará la representación de la interfaz de usuario con este enfoque
Una Guía Práctica para Migrar a Componentes de Servidor
React Advanced Conference 2023React Advanced Conference 2023
28 min
Una Guía Práctica para Migrar a Componentes de Servidor
Los Componentes de Servidor son la nueva gran cosa, pero hasta ahora gran parte del discurso a su alrededor ha sido abstracto. Cambiemos eso. Esta charla se centrará en el lado práctico de las cosas, proporcionando un mapa de ruta para navegar el viaje de migración. Comenzando desde una aplicación que utiliza el antiguo enrutador de páginas de Next.js y React Query, desglosaremos este viaje en un conjunto de pasos accionables e incrementales, deteniéndonos solo cuando tengamos algo que se pueda enviar y que sea claramente superior a lo que comenzamos. También discutiremos los próximos pasos y estrategias para adoptar gradualmente más aspectos de este paradigma transformador.
Baterías Incluidas Reimaginadas - El Resurgimiento de GraphQL Yoga
GraphQL Galaxy 2021GraphQL Galaxy 2021
33 min
Baterías Incluidas Reimaginadas - El Resurgimiento de GraphQL Yoga
El Guild ha lanzado recientemente Envelop - un nuevo y moderno Framework de Servidor GraphQL y sistema de plugins. En esta charla compartiré una breve descripción de Envelop y por qué probablemente deberías actualizar tu servidor GraphQL existente a él.
Componentes de Servidor React
React Day Berlin 2023React Day Berlin 2023
27 min
Componentes de Servidor React
Los Componentes de Servidor React son una forma más nueva de trabajar con React que se adopta ampliamente en marcos de trabajo como Next.js. En esta charla, veremos cómo funcionan y se ejecutan en el lado del servidor, y cómo encajan con la renderización en el servidor y las aplicaciones tradicionales de React.

Workshops on related topic

Desarrollando Blogs Dinámicos con SvelteKit & Storyblok: Una Masterclass Práctica
JSNation 2023JSNation 2023
174 min
Desarrollando Blogs Dinámicos con SvelteKit & Storyblok: Una Masterclass Práctica
Top Content
Featured WorkshopFree
Alba Silvente Fuentes
Roberto Butti
2 authors
Esta masterclass de SvelteKit explora la integración de servicios de terceros, como Storyblok, en un proyecto SvelteKit. Los participantes aprenderán cómo crear un proyecto SvelteKit, aprovechar los componentes de Svelte y conectarse a APIs externas. La masterclass cubre conceptos importantes incluyendo SSR, CSR, generación de sitios estáticos y despliegue de la aplicación usando adaptadores. Al final de la masterclass, los asistentes tendrán una sólida comprensión de la construcción de aplicaciones SvelteKit con integraciones de API y estarán preparados para el despliegue.
Next.js 13: Estrategias de Obtención de Datos
React Day Berlin 2022React Day Berlin 2022
53 min
Next.js 13: Estrategias de Obtención de Datos
Top Content
WorkshopFree
Alice De Mauro
Alice De Mauro
- Introducción- Prerrequisitos para la masterclass- Estrategias de obtención: fundamentos- Estrategias de obtención – práctica: API de obtención, caché (estática VS dinámica), revalidar, suspense (obtención de datos en paralelo)- Prueba tu construcción y sírvela en Vercel- Futuro: Componentes de servidor VS Componentes de cliente- Huevo de pascua de la masterclass (no relacionado con el tema, destacando la accesibilidad)- Conclusión
React Server Components Unleashed: Un profundo buceo en el desarrollo web de próxima generación
React Advanced Conference 2023React Advanced Conference 2023
153 min
React Server Components Unleashed: Un profundo buceo en el desarrollo web de próxima generación
Workshop
Maurice de Beijer
Maurice de Beijer
¡Prepárate para potenciar tus habilidades de desarrollo web con React Server Components! En esta inmersiva masterclass de 3 horas, desbloquearemos todo el potencial de esta tecnología revolucionaria y exploraremos cómo está transformando la forma en que los desarrolladores construyen aplicaciones web rápidas y eficientes.
Únete a nosotros mientras nos adentramos en el emocionante mundo de React Server Components, que combina a la perfección la renderización del lado del servidor con la interactividad del lado del cliente para un rendimiento y una experiencia de usuario inigualables. Obtendrás experiencia práctica a través de ejercicios prácticos, ejemplos del mundo real y orientación experta sobre cómo aprovechar el poder de los Server Components en tus propios proyectos.
A lo largo de la masterclass, cubriremos temas esenciales, incluyendo:
- Entender las diferencias entre los componentes del servidor y del cliente- Implementar Server Components para optimizar la obtención de datos y reducir el tamaño del paquete de JavaScript- Integrar Server y Client Components para una experiencia de usuario fluida- Estrategias para pasar datos eficazmente entre componentes y gestionar el estado- Consejos y mejores prácticas para maximizar los beneficios de rendimiento de React Server Components
Nivel de la masterclass:
No importa tu nivel actual de experiencia en React, esta masterclass te equipará con el conocimiento y las herramientas para llevar tu juego de desarrollo web a nuevas alturas. No pierdas esta oportunidad de mantenerte a la vanguardia y dominar la tecnología de vanguardia que está cambiando la cara del desarrollo web. ¡Inscríbete ahora y desata todo el poder de React Server Components!
Construye una Tienda Personalizada en Shopify con Hydrogen
React Advanced Conference 2021React Advanced Conference 2021
170 min
Construye una Tienda Personalizada en Shopify con Hydrogen
Workshop
Matt Seccafien
Cathryn Griffiths
2 authors
Hydrogen es un marco de trabajo y SDK React con opiniones para construir tiendas personalizadas rápidas, alimentadas por Shopify. Hydrogen adopta los Componentes del Servidor React y utiliza Vite y Tailwind CSS. En este masterclass, los participantes tendrán una primera vista de Hydrogen, aprenderán cómo y cuándo usarlo, todo mientras construyen una tienda personalizada completamente funcional con el equipo de Hydrogen.
Creación de tiendas personalizadas en Shopify con Hydrogen
React Summit 2022React Summit 2022
71 min
Creación de tiendas personalizadas en Shopify con Hydrogen
WorkshopFree
Abe Haskins
Megan Majewski
2 authors
Sumérgete en Hydrogen, un marco basado en React impulsado por Shopify. En este masterclass, exploraremos el marco y pondremos en marcha una tienda personalizada rápidamente. Aprenderás cómo (y cuándo) aprovechar los Componentes del Servidor de React y los mecanismos de almacenamiento en caché para construir tiendas personalizadas rápidas y dinámicas.
Construye una página de producto con el marco de trabajo Hydrogen de Shopify
React Advanced Conference 2022React Advanced Conference 2022
81 min
Construye una página de producto con el marco de trabajo Hydrogen de Shopify
WorkshopFree
David Witt
David Witt
Sumérgete en Hydrogen, un marco de trabajo basado en React para construir tiendas en línea sin cabeza. Hydrogen está diseñado para el comercio de Shopify con todas las características que necesitas para una tienda en línea lista para producción. Proporciona un inicio rápido y un entorno de desarrollo rápido para que puedas centrarte en lo divertido: construir experiencias de comercio únicas. En este masterclass, crearemos una nueva tienda en línea y construiremos rápidamente una página de producto. Cubriremos cómo empezar, enrutamiento basado en archivos, obtener datos de la API de Storefront, los componentes integrados de Hydrogen y cómo aplicar estilos con Tailwind.Aprenderás:- Empezar con la plantilla hello-world en StackBlitz- Enrutamiento basado en archivos para crear una ruta /productos/ejemplo- Enrutamiento dinámico /productos/:handle- Consultar la API de Storefront con GraphQL- Mover la consulta dentro de la aplicación de Hydrogen- Actualizar la consulta para obtener un producto por su identificador- Mostrar título, precio, imagen y descripción.- Estilizado con Tailwind- Selector de variantes y botón de compra ahora- Bonus si hay tiempo: página de colecciones
Requisitos previos: - Un navegador basado en Chromium (StackBlitz)- Idealmente experiencia con React. Un conocimiento general de desarrollo web también es válido.