Desarrollo web adaptado para 2024

Rate this content
Bookmark
SlidesProject website

La mayoría de los desarrolladores siguen de cerca las guerras de los frameworks. Tan ocupados con estos juegos, que olvidamos revisar las nuevas características que HTML, CSS y JavaScript nos ofrecen. ¡Los modales nativos, las unidades de vista dinámicas y el encadenamiento opcional son solo algunas de las características que ya deberías estar utilizando! Si dejaste de seguir el desarrollo de la Plataforma Web en 2015, es hora de actualizar tus conocimientos. Te enseñaré a construir aplicaciones adaptadas a 2024 y te prepararé para las nuevas características de la Plataforma Web que aparecerán en los próximos años.

This talk has been presented at React Summit 2024, check out the latest edition of this React Conference.

Andrzej Fricze
Andrzej Fricze
7 min
18 Jun, 2024

Comments

Sign in or register to post your comment.
Video Summary and Transcription
La charla de hoy cubre las características nativas en los navegadores, incluyendo las próximas y el Proyecto de Interoperabilidad. Las características nativas ofrecen velocidad, compatibilidad y una depuración mejorada. Algunos ejemplos destacados incluyen las unidades de vista dinámicas, el espacio entre flexbox/grid, las consultas de contenedor y la trayectoria de movimiento. El Proyecto de Interoperabilidad garantiza características consistentes de la plataforma web en diferentes navegadores. Las próximas características como el anidamiento nativo de CSS y las animaciones de entrada/salida están en el horizonte.
Available in English: Webdevelopment Tailored for 2024

1. Funciones Nativas en Navegadores

Short description:

Hoy hablaré sobre las funciones nativas en los navegadores y las próximas que vendrán. Las funciones nativas son más rápidas, están disponibles incluso cuando los frameworks cambian y facilitan la depuración. Algunas son mágicas y pueden mejorar el rendimiento y la estética de las aplicaciones. El Proyecto de Interoperabilidad garantiza características consistentes en la plataforma web en todos los navegadores. No reclamo propiedad, solo muestro ejemplos. Algunas funciones nativas destacadas incluyen unidades de vista dinámicas, espacio entre flexbox/grid, consultas de contenedor, subgrid, lienzo fuera de pantalla, trayectoria de movimiento, comportamiento de desplazamiento CSS, recorte/máscara CSS y selector HES.

Hoy hablaré sobre las funciones nativas que ya tenemos en los navegadores y algunas nuevas funciones nativas que vendrán a nuestros navegadores en los próximos meses y años. ¿Por qué hablaría especialmente de las funciones nativas? En primer lugar, generalmente son más rápidas que las implementaciones aprendidas por los usuarios, pero estarán disponibles incluso cuando tu framework o biblioteca favorita cambie o desaparezca porque podría suceder. Conocer las funciones nativas facilita la depuración porque al final es el lenguaje que los navegadores eligen, esa es la implementación real en el navegador, por lo que es bueno entender cómo funciona. Y algunas de las funciones nativas son realmente mágicas y quieres usarlas en una aplicación para hacerla más eficiente o más hermosa.

Antes de mostrarles algunas de esas funciones, debo mencionar el Proyecto de Interoperabilidad. El Proyecto de Interoperabilidad es un proyecto muy importante que comenzó con este nombre en 2021 y aún está en curso y es una cooperación de todos los principales navegadores para proporcionarnos a los desarrolladores web y proporcionar a nuestros clientes características de la plataforma web que funcionen de manera consistente en la misma forma en todos los navegadores. Y solo un pequeño descargo de responsabilidad, algunos ejemplos en esta presentación no son míos y no reclamo propiedad, solo quería mostrarles los mejores ejemplos de esas funciones nativas y cómo funcionan.

En primer lugar, la primera función nativa que fue parte de la Interoperabilidad 2022, por lo que en 2022 todos los navegadores decidieron que necesitaban implementar esta función de manera consistente en todos ellos, son las unidades de vista dinámicas, resolvieron un problema que podrías haber tenido antes con una vista pequeña y una vista grande que existen en los móviles. Entonces, si estabas usando la unidad de altura de la vista en tu CSS, era un problema porque en el móvil, en el escritorio este problema no existe, pero en el móvil hay una vista pequeña y una vista grande y una unidad de vista simplemente no era suficiente para adaptarse a eso. Y actualmente, tenemos esta altura de vista pequeña y altura de vista grande y también tenemos una altura de vista dinámica, por lo que esa es en realidad la mejor unidad para usar en la mayoría de los casos y funciona como esperarías. Entonces, si usas 100 alturas de vista dinámicas, tu ventana, tu elemento DOM siempre ocupará el 100% de la altura de la vista disponible, incluso en el móvil.

Otra función nueva interesante que se implementó en todos los navegadores como parte de la Interoperabilidad 2021 es un espacio para flexbox y grid. Entonces, finalmente no más problemas de margen, no más problemas de relleno, solo dices cuál es el espacio entre tus elementos en flex, en grid y obtienes el espacio que esperas. Tenemos consultas de contenedor como parte de la Interoperabilidad 2023 y esta es una función encantadora cuando puedes cambiar el estilo de tu elemento según el tamaño del contenedor, no solo el contenedor completo y creo que esta demostración encantadora muestra lo útiles que pueden ser las consultas de contenedor. Como parte de la misma Interoperabilidad 2023, hemos obtenido subgrid. Entonces, con una sola declaración de grid como ves aquí, lo siento, oh, este es el que quería mostrarte. Entonces, con una sola declaración de nuestro grid principal, podemos ir a los hijos de este grid y usar subgrid como ves aquí. Y luego todos esos hijos e incluso los hijos de esos hijos se colocan en el grid del padre, lo cual es súper útil para crear diseños complicados en tu sitio. Tenemos lienzo fuera de pantalla para que puedas hacer 3D de alto rendimiento como puedes ver aquí, 3D animations en un hilo diferente que tu hilo principal. Por lo que esto puede ser tan complicado como quieras y no bloqueará tu UI principal. Tenemos trayectoria de movimiento como parte de la Interoperabilidad 2023 que nos permite crear fácilmente esas encantadoras animations donde tu elemento se anima exactamente en la trayectoria dada. Como puedes ver aquí, en este encantador animation de planetas. Tenemos comportamiento de desplazamiento CSS para desplazamiento suave. Entonces, con una sola declaración, comportamiento de desplazamiento suave, y usando anclas de enlace, puedo desplazarme suavemente entre diferentes partes de mi página. Luego, como parte de la Interoperabilidad 2023, se nos han dado buenas implementaciones de recorte y máscara CSS. Entonces, podemos hacer cosas locas como esta con texto, un GIF puede ser un fondo para el texto, o puedes recortar tus elementos DOM en muchas y diferentes formas salvajes. Y también puedes animar esas formas de recorte. Se nos ha dado el selector HES. Entonces, el selector de padre que es súper útil, por ejemplo, para crear estados de formulario complicados y mostrar estados de formulario complicados.

2. Próximas Funciones Nativas y Proyecto de Interoperabilidad

Short description:

Las funciones nativas de anidación de CSS, los modelos nativos y las animaciones de entrada y salida son funciones próximas. Mejoran la creación de hojas de estilo y el diseño de la interfaz de usuario. Sigue el Proyecto de Interoperabilidad para conocer las últimas funciones implementadas en todos los navegadores. Confiables y listas para usar.

También, como parte de la Interoperabilidad 2023, en 2024, deberíamos tener un soporte completo en todos los navegadores para la anidación nativa de CSS, lo cual es realmente útil para crear hojas de estilo un poco más complicadas.

Como parte de la Interoperabilidad 2022, se nos han dado modelos nativos, que funcionan realmente bien. Todo esto es solo un elemento de diálogo nativo sin mucho JS o CSS. Simplemente funciona de forma nativa. Y creo que es realmente genial. Es muy útil para la parte de la interfaz de usuario.

También, en 2024, deberíamos tener un soporte completo para las animaciones de entrada y salida. Así que podremos hacer cosas locas como agregar una propiedad de visualización al final de nuestros keyframes de animación o transiciones. Y eso es todo. Quería mostrarte que ya tenemos algunas nuevas funciones excelentes implementadas y que están llegando a la plataforma. Quería mencionar que debes seguir el Proyecto de Interoperabilidad para obtener el conocimiento más reciente sobre las nuevas funciones geniales que se están implementando de manera segura en todos los navegadores. Puedes confiar en ellas y, ya sabes, usarlas. Muchas gracias.

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

Una Guía del Comportamiento de Renderizado de React
React Advanced 2022React Advanced 2022
25 min
Una Guía del Comportamiento de Renderizado de React
Top Content
This transcription provides a brief guide to React rendering behavior. It explains the process of rendering, comparing new and old elements, and the importance of pure rendering without side effects. It also covers topics such as batching and double rendering, optimizing rendering and using context and Redux in React. Overall, it offers valuable insights for developers looking to understand and optimize React rendering.
No resuelvas problemas, elimínalos
React Advanced 2021React Advanced 2021
39 min
No resuelvas problemas, elimínalos
Top Content
Kent C. Dodds discusses the concept of problem elimination rather than just problem-solving. He introduces the idea of a problem tree and the importance of avoiding creating solutions prematurely. Kent uses examples like Tesla's electric engine and Remix framework to illustrate the benefits of problem elimination. He emphasizes the value of trade-offs and taking the easier path, as well as the need to constantly re-evaluate and change approaches to eliminate problems.
Escalando con Remix y Micro Frontends
Remix Conf Europe 2022Remix Conf Europe 2022
23 min
Escalando con Remix y Micro Frontends
Top Content
This talk discusses the usage of Microfrontends in Remix and introduces the Tiny Frontend library. Kazoo, a used car buying platform, follows a domain-driven design approach and encountered issues with granular slicing. Tiny Frontend aims to solve the slicing problem and promotes type safety and compatibility of shared dependencies. The speaker demonstrates how Tiny Frontend works with server-side rendering and how Remix can consume and update components without redeploying the app. The talk also explores the usage of micro frontends and the future support for Webpack Module Federation in Remix.
Impacto: Creciendo como Ingeniero
React Summit 2022React Summit 2022
27 min
Impacto: Creciendo como Ingeniero
Top Content
This Talk explores the concepts of impact and growth in software engineering. It emphasizes the importance of finding ways to make the impossible possible and the role of mastery in expanding one's sphere of impact. The Talk also highlights the significance of understanding business problems and fostering a culture of collaboration and innovation. Effective communication, accountability, and decision-making are essential skills for engineers, and setting goals and finding sponsors can help drive career growth. Feedback, goal setting, and stepping outside of comfort zones are crucial for personal development and growth. Taking responsibility for one's own growth and finding opportunities for impact are key themes discussed in the Talk.
Acelerando tu aplicación React con menos JavaScript
React Summit 2023React Summit 2023
32 min
Acelerando tu aplicación React con menos JavaScript
Top Content
Mishko, the creator of Angular and AngularJS, discusses the challenges of website performance and JavaScript hydration. He explains the differences between client-side and server-side rendering and introduces Quik as a solution for efficient component hydration. Mishko demonstrates examples of state management and intercommunication using Quik. He highlights the performance benefits of using Quik with React and emphasizes the importance of reducing JavaScript size for better performance. Finally, he mentions the use of QUIC in both MPA and SPA applications for improved startup performance.
Concurrencia en React, Explicada
React Summit 2023React Summit 2023
23 min
Concurrencia en React, Explicada
Top Content
React 18's concurrent rendering, specifically the useTransition hook, optimizes app performance by allowing non-urgent updates to be processed without freezing the UI. However, there are drawbacks such as longer processing time for non-urgent updates and increased CPU usage. The useTransition hook works similarly to throttling or bouncing, making it useful for addressing performance issues caused by multiple small components. Libraries like React Query may require the use of alternative APIs to handle urgent and non-urgent updates effectively.

Workshops on related topic

Masterclass de Depuración de Rendimiento de React
React Summit 2023React Summit 2023
170 min
Masterclass de Depuración de Rendimiento de React
Top Content
Featured WorkshopFree
Ivan Akulov
Ivan Akulov
Los primeros intentos de Ivan en la depuración de rendimiento fueron caóticos. Vería una interacción lenta, intentaría una optimización aleatoria, vería que no ayudaba, y seguiría intentando otras optimizaciones hasta que encontraba la correcta (o se rendía).
En aquel entonces, Ivan no sabía cómo usar bien las herramientas de rendimiento. Haría una grabación en Chrome DevTools o React Profiler, la examinaría, intentaría hacer clic en cosas aleatorias, y luego la cerraría frustrado unos minutos después. Ahora, Ivan sabe exactamente dónde y qué buscar. Y en esta masterclass, Ivan te enseñará eso también.
Así es como va a funcionar. Tomaremos una aplicación lenta → la depuraremos (usando herramientas como Chrome DevTools, React Profiler, y why-did-you-render) → identificaremos el cuello de botella → y luego repetiremos, varias veces más. No hablaremos de las soluciones (en el 90% de los casos, es simplemente el viejo y regular useMemo() o memo()). Pero hablaremos de todo lo que viene antes - y aprenderemos a analizar cualquier problema de rendimiento de React, paso a paso.
(Nota: Esta masterclass es más adecuada para ingenieros que ya están familiarizados con cómo funcionan useMemo() y memo() - pero quieren mejorar en el uso de las herramientas de rendimiento alrededor de React. Además, estaremos cubriendo el rendimiento de la interacción, no la velocidad de carga, por lo que no escucharás una palabra sobre Lighthouse 🤐)
React, TypeScript y TDD
React Advanced 2021React Advanced 2021
174 min
React, TypeScript y TDD
Top Content
Featured WorkshopFree
Paul Everitt
Paul Everitt
ReactJS es extremadamente popular y, por lo tanto, ampliamente soportado. TypeScript está ganando popularidad y, por lo tanto, cada vez más soportado.

¿Los dos juntos? No tanto. Dado que ambos cambian rápidamente, es difícil encontrar materiales de aprendizaje precisos.

¿React+TypeScript, con los IDEs de JetBrains? Esa combinación de tres partes es el tema de esta serie. Mostraremos un poco sobre mucho. Es decir, los pasos clave para ser productivo, en el IDE, para proyectos de React utilizando TypeScript. En el camino, mostraremos el desarrollo guiado por pruebas y enfatizaremos consejos y trucos en el IDE.
Masterclass Web3 - Construyendo Tu Primer Dapp
React Advanced 2021React Advanced 2021
145 min
Masterclass Web3 - Construyendo Tu Primer Dapp
Top Content
Featured WorkshopFree
Nader Dabit
Nader Dabit
En esta masterclass, aprenderás cómo construir tu primer dapp de pila completa en la blockchain de Ethereum, leyendo y escribiendo datos en la red, y conectando una aplicación de front end al contrato que has desplegado. Al final de la masterclass, entenderás cómo configurar un entorno de desarrollo de pila completa, ejecutar un nodo local e interactuar con cualquier contrato inteligente usando React, HardHat y Ethers.js.
Domina los Patrones de JavaScript
JSNation 2024JSNation 2024
145 min
Domina los Patrones de JavaScript
Top Content
Featured Workshop
Adrian Hajdin
Adrian Hajdin
Durante esta masterclass, los participantes revisarán los patrones esenciales de JavaScript que todo desarrollador debería conocer. A través de ejercicios prácticos, ejemplos del mundo real y discusiones interactivas, los asistentes profundizarán su comprensión de las mejores prácticas para organizar el código, resolver desafíos comunes y diseñar arquitecturas escalables. Al final de la masterclass, los participantes ganarán una nueva confianza en su capacidad para escribir código JavaScript de alta calidad que resista el paso del tiempo.
Puntos Cubiertos:
1. Introducción a los Patrones de JavaScript2. Patrones Fundamentales3. Patrones de Creación de Objetos4. Patrones de Comportamiento5. Patrones Arquitectónicos6. Ejercicios Prácticos y Estudios de Caso
Cómo Ayudará a los Desarrolladores:
- Obtener una comprensión profunda de los patrones de JavaScript y sus aplicaciones en escenarios del mundo real- Aprender las mejores prácticas para organizar el código, resolver desafíos comunes y diseñar arquitecturas escalables- Mejorar las habilidades de resolución de problemas y la legibilidad del código- Mejorar la colaboración y la comunicación dentro de los equipos de desarrollo- Acelerar el crecimiento de la carrera y las oportunidades de avance en la industria del software
Fundamentos de Remix
React Summit 2022React Summit 2022
136 min
Fundamentos de Remix
Top Content
Featured WorkshopFree
Kent C. Dodds
Kent C. Dodds
Construir aplicaciones web modernas está lleno de complejidad. Y eso solo si te molestas en lidiar con los problemas
¿Cansado de conectar onSubmit a las API del backend y asegurarte de que tu caché del lado del cliente se mantenga actualizada? ¿No sería genial poder utilizar la naturaleza global de CSS en tu beneficio, en lugar de buscar herramientas o convenciones para evitarla o trabajar alrededor de ella? ¿Y qué te parecería tener diseños anidados con una gestión de datos inteligente y optimizada para el rendimiento que simplemente funciona™?
Remix resuelve algunos de estos problemas y elimina completamente el resto. Ni siquiera tienes que pensar en la gestión de la caché del servidor o en los conflictos del espacio de nombres global de CSS. No es que Remix tenga APIs para evitar estos problemas, simplemente no existen cuando estás usando Remix. Ah, y no necesitas ese enorme y complejo cliente graphql cuando estás usando Remix. Ellos te tienen cubierto. ¿Listo para construir aplicaciones más rápidas de manera más rápida?
Al final de esta masterclass, sabrás cómo:- Crear Rutas de Remix- Estilizar aplicaciones de Remix- Cargar datos en los cargadores de Remix- Mutar datos con formularios y acciones
Vue3: Desarrollo Moderno de Aplicaciones Frontend
Vue.js London Live 2021Vue.js London Live 2021
169 min
Vue3: Desarrollo Moderno de Aplicaciones Frontend
Top Content
Featured WorkshopFree
Mikhail Kuznetsov
Mikhail Kuznetsov
Vue3 fue lanzado a mediados de 2020. Además de muchas mejoras y optimizaciones, la principal característica que trae Vue3 es la API de Composición, una nueva forma de escribir y reutilizar código reactivo. Aprendamos más sobre cómo usar la API de Composición de manera eficiente.

Además de las características principales de Vue3, explicaremos ejemplos de cómo usar bibliotecas populares con Vue3.

Tabla de contenidos:
- Introducción a Vue3
- API de Composición
- Bibliotecas principales
- Ecosistema Vue3

Requisitos previos:
IDE de elección (Inellij o VSC) instalado
Nodejs + NPM