La próxima ola de frameworks web es BYOJS

Rate this content
Bookmark

El desarrollo de aplicaciones web ha tenido muchos cambios a lo largo de la vida de la web. Desde aplicaciones del lado del servidor con un toque de JavaScript hasta aplicaciones de una sola página construidas completamente con JavaScript. Ahora estamos volviendo a donde muchos nuevos frameworks web se construyen primero de forma estática, con JavaScript agregado según sea necesario. Esta charla cubre la construcción de aplicaciones web con JavaScript a través de la lente de Astro, un generador de sitios estáticos donde la elección del framework de JavaScript es única para ti.

This talk has been presented at JSNation 2022, check out the latest edition of this JavaScript Conference.

FAQ

BYOJS significa 'Bring Your Own JavaScript'. Es un concepto en el desarrollo web que implica usar el framework de JavaScript de tu elección en un proyecto específico, permitiendo una mayor flexibilidad y personalización en la construcción de aplicaciones web.

Brandon Roberts es un desarrollador y GDE (Google Developer Expert) de Angular. Contribuye activamente a la comunidad Angular y es uno de los mantenedores del proyecto ngRx, que es un conjunto de bibliotecas reactivas para aplicaciones Angular.

Astro es una herramienta de generación de sitios estáticos que también soporta renderizado en el lado del servidor. No envía JavaScript del lado del cliente por defecto, promoviendo una arquitectura optimizada centrada en la velocidad y eficiencia de carga.

Jamstack es una arquitectura diseñada para hacer la web más rápida, segura y fácil de escalar. Utiliza JavaScript, APIs desacopladas, y contenido pre-renderizado en HTML para optimizar la entrega y la experiencia del usuario en aplicaciones web.

El renderizado en el lado del servidor (SSR) es crucial para mejorar el tiempo de carga y la interactividad de las aplicaciones web, permitiendo que el contenido se pre-renderice en el servidor y se envíe al cliente, donde puede ser hidratado para añadir interactividad.

Astro permite integrar diversos frameworks de JavaScript como React, Vue, y Svelte, entre otros, permitiendo que los desarrolladores utilicen sus conocimientos existentes para construir componentes estáticos que luego pueden ser mejorados con interactividad en el cliente.

Brandon Roberts
Brandon Roberts
23 min
20 Jun, 2022

Comments

Sign in or register to post your comment.
Video Summary and Transcription
La próxima ola de frameworks web es BYOJS, que cubre la historia y evolución de la construcción de aplicaciones web. La evolución de los frameworks web y los sistemas de compilación incluye opciones populares como React, Angular y Vue, así como sistemas de compilación avanzados como Webpack y Rollup. El aumento de las herramientas de medición de rendimiento y la adopción de Jamstack han llevado a una mejora en el rendimiento web. La arquitectura Jamstack se centra en la pre-renderización de páginas, la desacoplación de APIs y servicios, y la mejora de páginas con JavaScript. Astro, un generador de sitios estáticos con soporte SSR, promueve la arquitectura de islas y la hidratación parcial.

1. Introducción a los marcos de trabajo web

Short description:

La próxima ola de marcos de trabajo web es BYOJS. Cubriré la historia y evolución de la construcción de aplicaciones web y las diferentes pilas utilizadas. Luego hablaré sobre las aplicaciones del lado del servidor tradicionales como PHP, ASP clásico, .NET MVC y Express. Después de eso, discutiré las aplicaciones del lado del cliente y la introducción de los empaquetadores como Gulp, Browserify y Require.js.

La próxima ola de marcos de trabajo web es BYOJS.Hola, mi nombre es Brandon Roberts.Puedes seguirme en Twitter en Brandon T Roberts, donde publico gifs, hablo de deportes y a veces bloqueo a personas, así que puedes seguirme allí.Soy un mantenedor en el proyecto ngRx, que es un conjunto de bibliotecas reactivas para aplicaciones Angular.También soy un GDE, lo que significa que he estado en la comunidad de Angular durante un tiempo y he podido contribuir con algunas cosas interesantes allí.También soy un ingeniero de experiencia de desarrollo en App-Rite.

Entonces, para la agenda de esta charla, quiero cubrir la historia y evolución de la construcción de aplicaciones web y las diferentes pilas que he utilizado a lo largo de los años.Hablaré sobre la próxima ola de marcos de trabajo web y el significado de BYOJS.Y hablaré sobre lo que eso significa a través del proyecto Astro.

Primero hablaré sobre la historia y evolución de la construcción de aplicaciones web.Como mencioné antes, esto es desde mi punto de vista, que ha sido durante varios años.Tu experiencia puede variar aquí.Así que aclaremos eso desde el principio.Pero creo que tendremos algunas similitudes en el camino.Así que adentrémonos en la historia de la construcción de aplicaciones web.Tenemos aplicaciones tradicionales del lado del servidor, de las que hablaremos, aplicaciones del lado del cliente, y aplicaciones más modernas del lado del servidor antes de entrar en la próxima ola.

Para las aplicaciones tradicionales del lado del servidor, hablemos de algunas de ellas.Está PHP, que sigue siendo un favorito entre los desarrolladores.También hay otra opción clásica, ASP clásico, que es similar a PHP, pero utiliza una sintaxis mássimilar a .NET.También está .NET MVC, que es otro marco de trabajo de Microsoft utilizado para construir aplicaciones webcon una separación más clara entre modelo, vista y controlador.Express también surgió como una forma de servir una aplicación HTML utilizando varios lenguajes de plantillas.Por supuesto, hay muchos otros que surgieron en el camino.Estos marcos de trabajo del lado del servidor realizaban todo el procesamiento en el servidor y simplemente devolvían el HTML.Si había alguna funcionalidad de JavaScript en las páginas que estábamos construyendo, seagregaba más o menos como scripts en línea o archivos de JavaScript ligeramente empaquetados concatenadosjuntos.Esto se hacía generalmente utilizando la conocida biblioteca jQuery en ese entonces.

Ahora pasamos a las aplicaciones del lado del cliente.Cuando se introdujo más JavaScript en estas aplicaciones, comenzamos a vermás empaquetadores involucrados en el proceso para optimizar el envío de JavaScripta los usuarios.Herramientas de código abierto como Gulp, que es un conjunto de herramientas que utiliza un sistema de construcción en tiempo real.También está Browserify, que es una de las primeras herramientas que permitió a los desarrolladores utilizarmódulos en estilo Node.js y compilarlos y usarlos en el navegador.Require.js, que es un sistema de carga de módulos y archivos que también utiliza importaciones en estilo Node.js.

Read also

2. Evolución de los marcos de trabajo web y sistemas de construcción

Short description:

Y System.js, Backbone, Ember, AngularJS, Angular, React y Vue son algunos de los marcos de trabajo web que han surgido. En el espacio de React, Next.js y Remix son opciones populares. Angular Universal y Nuxt se utilizan para el renderizado del lado del servidor en los espacios de Angular y Vue. Webpack y Rollup son sistemas de construcción avanzados, mientras que Lerna y NX son herramientas para el desarrollo de monorepos. El cambio hacia el envío de aplicaciones JavaScript ha llevado al surgimiento de herramientas de medición de rendimiento y a la adopción de la pila Jam. Herramientas como web.dev proporcionan métricas para medir la velocidad de carga de la página.

Y System.js, donde se utilizaban módulos ES estándar que podían cargarse en el navegador. Y con la evolución de las aplicaciones web construidas para aplicaciones del lado del cliente, surgieron más marcos de trabajo web en el camino. Backbone, que fue un marco MVC temprano para construir aplicaciones del lado del cliente. Está Ember, que se basa en gran medida en convenciones e integraciones para construir aplicaciones web. Estaba AngularJS, que se integraba con HTML existente con cosas como directivas. Angular, su sucesor, que se orientaba a aplicaciones más generales. React, introducido en 2013, que realmente cambió la forma en que pensamos en la construcción de interfaces de usuario en JavaScript. Y está Vue, que ha surgido y ha abierto su propio camino como una herramienta para construir aplicaciones web. Y, por supuesto, hay muchos otros marcos de trabajo web que han surgido en este espacio.

Para las aplicaciones modernas del lado del servidor que se construyeron en JavaScript, en el espacio de React tenemos opciones como Next.js, que es el marco de trabajo de React más grande hasta la fecha para construir aplicaciones. Y recién llegados a este espacio como Remix, que combina algunas cosas del cliente y del servidor de una manera más cohesiva. En el espacio de Angular tenemos cosas como Universal. Angular Universal para renderizar aplicaciones del lado del cliente en el servidor. Y para Vue tenemos herramientas como Nuxt y también hay otras en este espacio.

Las aplicaciones modernas de JavaScript también trajeron la necesidad de sistemas de construcción másadvanced. Y así, algunos de estos sistemas facilitaron el empaquetado de JavaScript para enviarlo al cliente. Y esto también facilitó el envío de aplicaciones completas del lado del cliente. Webpack probablemente sea el más notable hasta la fecha, con su amplio conjunto de complementos y personalización al igual que Rollup, que es un paquete de módulos para JavaScript que compila pequeñas piezas de código en algo más grande como una biblioteca o una aplicación. También está V, que ha llegado y ha arrasado en el panorama web con su velocidad y extensibilidad a través de complementos, y también se basa en Rollup y está construido en un lenguaje diferente, pero se utiliza para construir aplicaciones JavaScript. Si estás en el espacio de monorepo, hay herramientas como Lerna, que orquesta las herramientas de construcción, y ha estado presente durante varios años, y herramientas como NX que han modernizado el desarrollo de monorepos de código abierto. Y también hay otras en este espacio que han surgido como sistemas de construcción o herramientas para ayudar a los desarrolladores a enviar aplicaciones web. Porque al final del día, solo queremos volver a enviar código y aplicaciones a los usuarios y brindarles una buena experiencia de usuario. Así que a continuación, hablaré sobre la próxima ola de marcos de trabajo web y formas de enviar JavaScript, enviar aplicaciones con JavaScript que han surgido. Así que podemos comenzar con el por qué ha habido un cambio en las aplicaciones tradicionales del lado del servidor para enviar solo o la mayoría de las aplicaciones utilizando JavaScript y obtener algunas de las nuevas herramientas que están disponibles. Una cosa que realmente ha surgido es la idea de nuestras herramientas que te permiten medir el rendimiento de las aplicaciones web y brindarte más información sobre ese proceso. También está el surgimiento de la pila Jam, que analiza cuál es la definición de eso y cómo funcionan las diferentes herramientas en ese espacio. En lo que llamamos, al menos para esta charla, la web de primer nivel estático o basada en HTML. Tenemos herramientas que miden qué tan rápido y cuánto tiempo tarda en cargarse una página. También hay muchas herramientas conocidas. Estoy utilizando web.dev como referencia para las métricas que utilizamos para medir esto.

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

Construyendo Mejores Sitios Web con Remix
React Summit Remote Edition 2021React Summit Remote Edition 2021
33 min
Construyendo Mejores Sitios Web con Remix
Top Content
Remix is a web framework built on React Router that focuses on web fundamentals, accessibility, performance, and flexibility. It delivers real HTML and SEO benefits, and allows for automatic updating of meta tags and styles. It provides features like login functionality, session management, and error handling. Remix is a server-rendered framework that can enhance sites with JavaScript but doesn't require it for basic functionality. It aims to create quality HTML-driven documents and is flexible for use with different web technologies and stacks.
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.
Documentación Full Stack
JSNation 2022JSNation 2022
28 min
Documentación Full Stack
Top Content
The Talk discusses the shift to full-stack frameworks and the challenges of full-stack documentation. It highlights the power of interactive tutorials and the importance of user testing in software development. The Talk also introduces learn.svelte.dev, a platform for learning full-stack tools, and discusses the roadmap for SvelteKit and its documentation.
SolidJS: ¿Por qué tanto Suspense?
JSNation 2023JSNation 2023
28 min
SolidJS: ¿Por qué tanto Suspense?
Top Content
Suspense is a mechanism for orchestrating asynchronous state changes in JavaScript frameworks. It ensures async consistency in UIs and helps avoid trust erosion and inconsistencies. Suspense boundaries are used to hoist data fetching and create consistency zones based on the user interface. They can handle loading states of multiple resources and control state loading in applications. Suspense can be used for transitions, providing a smoother user experience and allowing prioritization of important content.
De GraphQL Zero a GraphQL Hero con RedwoodJS
GraphQL Galaxy 2021GraphQL Galaxy 2021
32 min
De GraphQL Zero a GraphQL Hero con RedwoodJS
Top Content
Tom Pressenwurter introduces Redwood.js, a full stack app framework for building GraphQL APIs easily and maintainably. He demonstrates a Redwood.js application with a React-based front end and a Node.js API. Redwood.js offers a simplified folder structure and schema for organizing the application. It provides easy data manipulation and CRUD operations through GraphQL functions. Redwood.js allows for easy implementation of new queries and directives, including authentication and limiting access to data. It is a stable and production-ready framework that integrates well with other front-end technologies.
RedwoodJS: El marco de aplicación React Full-Stack de tus sueños
React Summit Remote Edition 2021React Summit Remote Edition 2021
43 min
RedwoodJS: El marco de aplicación React Full-Stack de tus sueños
Top Content
Redwood JS is a full stack React app framework that simplifies development and testing. It uses a directory structure to organize code and provides easy data fetching with cells. Redwood eliminates boilerplate and integrates Jest and Storybook. It supports pre-rendering and provides solutions for authentication and deployment. Redwood is a cross-client framework that allows for building web and mobile applications without duplicating work.

Workshops on related topic

Construyendo aplicaciones web que iluminan Internet con QwikCity
JSNation 2023JSNation 2023
170 min
Construyendo aplicaciones web que iluminan Internet con QwikCity
Featured WorkshopFree
Miško Hevery
Miško Hevery
Construir aplicaciones web instantáneas a gran escala ha sido elusivo. Los sitios del mundo real necesitan seguimiento, análisis y interfaces y interacciones de usuario complejas. Siempre comenzamos con las mejores intenciones pero terminamos con un sitio menos que ideal.
QwikCity es un nuevo meta-framework que te permite construir aplicaciones a gran escala con un rendimiento de inicio constante. Veremos cómo construir una aplicación QwikCity y qué la hace única. El masterclass te mostrará cómo configurar un proyecto QwikCity. Cómo funciona el enrutamiento con el diseño. La aplicación de demostración obtendrá datos y los presentará al usuario en un formulario editable. Y finalmente, cómo se puede utilizar la autenticación. Todas las partes básicas para cualquier aplicación a gran escala.
En el camino, también veremos qué hace que Qwik sea único y cómo la capacidad de reanudación permite un rendimiento de inicio constante sin importar la complejidad de la aplicación.
De vuelta a las raíces con Remix
React Summit 2023React Summit 2023
106 min
De vuelta a las raíces con Remix
Featured Workshop
Alex Korzhikov
Pavlik Kiselev
2 authors
La web moderna sería diferente sin aplicaciones ricas del lado del cliente respaldadas por potentes frameworks: React, Angular, Vue, Lit y muchos otros. Estos frameworks se basan en JavaScript del lado del cliente, que es su núcleo. Sin embargo, existen otros enfoques para el renderizado. Uno de ellos (bastante antiguo, por cierto) es el renderizado del lado del servidor completamente sin JavaScript. Descubramos si esta es una buena idea y cómo Remix puede ayudarnos con ello?
Prerrequisitos- Buen entendimiento de JavaScript o TypeScript- Sería útil tener experiencia con React, Redux, Node.js y escribir aplicaciones FrontEnd y BackEnd- Preinstalar Node.js, npm- Preferimos usar VSCode, pero también se pueden utilizar IDE en la nube como codesandbox (otros IDE también están bien)
Curso intensivo sobre Astro y Storyblok
React Day Berlin 2023React Day Berlin 2023
119 min
Curso intensivo sobre Astro y Storyblok
WorkshopFree
Arisa Fukuzaki
Arisa Fukuzaki
La arquitectura sin cabeza ha ganado inmensa popularidad en los últimos años por su capacidad para desacoplar el frontend y el backend, permitiendo a los desarrolladores crear aplicaciones web atractivas, interactivas y escalables.
En esta masterclass, nos sumergiremos rápidamente en el Mundo y la Arquitectura sin Cabeza.
Además, construiremos un sitio web de blog súper rápido utilizando Storyblok, un CMS sin cabeza que ofrece una función de vista previa en tiempo real con un enfoque de componente anidable, y Astro (3.0) que ya está creando revuelo con el nuevo directorio de aplicaciones.
- Domina los fundamentos de CMS sin cabeza- Domina un enfoque de Astro & CMS sin cabeza- Usa el diseño atómico en tu aplicación Astro & Storyblok- Creación de páginas, adición de contenido y comprensión de cómo funciona el enrutamiento dinámico con sin cabeza
Accesibilidad web en aplicaciones JavaScript
React Summit 2022React Summit 2022
161 min
Accesibilidad web en aplicaciones JavaScript
Workshop
Sandrina Pereira
Sandrina Pereira
A menudo vemos que JavaScript daña la accesibilidad de un sitio web. En esta masterclass, aprenderás cómo evitar errores comunes y cómo utilizar JS a tu favor para mejorar la accesibilidad de tus aplicaciones web.
En esta masterclass exploraremos múltiples ejemplos del mundo real con problemas de accesibilidad, y aprenderás cómo hacer que funcionen para las personas que utilizan un mouse o un teclado. También aprenderás cómo se utilizan los lectores de pantalla, ¡y te mostraré que no hay razón para tener miedo de usar uno!
Únete a mí y déjame mostrarte cómo la accesibilidad no limita tus soluciones o habilidades. ¡Al contrario, las hace más inclusivas!
Al final, serás capaz de:- Comprender los principios de WCAG y cómo están organizados- Conocer casos comunes en los que JavaScript es esencial para la accesibilidad- Crear enlaces, botones y elementos conmutables inclusivos- Utilizar regiones en vivo para errores y estados de carga- Integrar la accesibilidad en el flujo de trabajo de tu equipo de inmediato- Darte cuenta de que crear sitios web accesibles no es tan difícil como parece ;)
Deja que la IA sea tu Documentación
JSNation 2024JSNation 2024
69 min
Deja que la IA sea tu Documentación
Workshop
Jesse Hall
Jesse Hall
Únete a nuestro masterclass dinámico para crear un portal de documentación impulsado por IA. Aprende a integrar ChatGPT de OpenAI con Next.js 14, Tailwind CSS y tecnología de vanguardia para ofrecer soluciones de código e resúmenes instantáneos. Esta sesión práctica te equipará con el conocimiento para revolucionar la forma en que los usuarios interactúan con la documentación, convirtiendo las búsquedas tediosas en descubrimientos eficientes e inteligentes.
Aspectos destacados:
- Experiencia práctica en la creación de un sitio de documentación impulsado por IA.- Comprensión de la integración de la IA en las experiencias de usuario.- Habilidades prácticas con las últimas tecnologías de desarrollo web.- Estrategias para implementar y mantener recursos de documentación inteligente.
Tabla de contenidos:- Introducción a la IA en la documentación- Configuración del entorno- Construcción de la estructura de documentación- Integración de ChatGPT para documentación interactiva