Herramientas de JavaScript: La Evolución y Futuro de las Herramientas de JS y Construcción Front-end

Rate this content
Bookmark

En esta charla, repasaré la evolución de las herramientas de JavaScript y las herramientas de construcción front-end, el propio JavaScript y su futuro.


También hablaré sobre Babel y otras herramientas de construcción, lo que podrían ser en el futuro. Además, hablaré sobre JavaScript en sí como lenguaje, su presente y su futuro.

FAQ

Un Desarrollador Social, en el contexto del desarrollo web, es alguien que participa activamente en la comunidad de desarrolladores, compartiendo conocimiento, apoyando el aprendizaje colectivo y abogando por las mejores prácticas y herramientas en el desarrollo de software.

Las principales razones incluyen la gestión de dependencias, la transpilación para asegurar la compatibilidad de sintaxis en diferentes navegadores, el empaquetado de código en un archivo central, la minificación para reducir el tamaño del código y mejorar la carga, y la gestión de módulos sin depender del navegador.

Entre 2005 y 2010, herramientas como Dojo Builder y Google Closure Tools eran populares. Dojo Builder ofrecía características como minificación y gestión de módulos, mientras que Google Closure Tools se centraba en la optimización y minimización del código.

Webpack ha evolucionado significativamente desde su primera versión hasta la versión actual, la versión 5. Ha ganado popularidad en grandes empresas, ofreciendo características como el reemplazo de módulos en caliente, división de código y recarga en vivo, además de permitir a los desarrolladores escribir sus propios scripts de npm.

Rollup es ideal para construir bibliotecas de JavaScript ya que permite una configuración sencilla, ofrece división de código y convierte pequeñas piezas de código en un archivo complejo, siendo más fácil de aprender y proporcionando una construcción rápida.

Parcel se destaca por no requerir configuración previa, lo cual elimina la dificultad de configuración que presentan herramientas como Rollup o Webpack. Además, ofrece un tiempo de empaquetado más rápido y una excelente experiencia de desarrollo con buena documentación y soporte comunitario.

Snowpack elimina la necesidad de empaquetar durante el desarrollo aprovechando las importaciones de módulos ES, lo que permite reconstrucciones instantáneas y una construcción más rápida. Aunque aún es experimental, busca implementar un enfoque sin empaquetado para la producción.

ESBuild, siendo un experimento, muestra lo rápido que pueden ser las herramientas de construcción. Escrito en Go, es más rápido que Webpack, Rollup y Parcel, y su rendimiento superior está influenciando el desarrollo de nuevas herramientas y enfoques en el ecosistema de JavaScript.

El futuro de las herramientas de construcción de JavaScript parece dirigirse hacia soluciones sin configuración y con mayor personalización, lo que permitirá a los desarrolladores mayor flexibilidad y agilidad. Se espera también una mejora continua en las velocidades de construcción.

Shedrack Akintayo
Shedrack Akintayo
11 min
18 Jun, 2021

Comments

Sign in or register to post your comment.

Video Summary and Transcription

La charla de hoy aborda la evolución y futuro de las herramientas de JavaScript, incluyendo la gestión de dependencias, la transpilación, el empaquetado, la minificación y la gestión de módulos. Webpack ha ganado popularidad y ofrece características como la sustitución de módulos en caliente y la división de código. También se discuten otras herramientas de construcción como Rollup, Parcel, Snowpack y ESBuild. La charla explora enfoques de importación en el navegador y sin empaquetado, y enfatiza la naturaleza dinámica del ecosistema de JavaScript con herramientas en constante evolución y compensaciones específicas del proyecto.

1. Introducción a las herramientas de JavaScript

Short description:

Hola a todos. Hoy voy a hablar sobre las herramientas de JavaScript, la evolución y el futuro de JavaScript y las herramientas de construcción frontend. Las razones esenciales por las que construimos nuestro código frontend hoy en día incluyen la gestión de dependencias, la transpilación, el empaquetado, la minificación y la gestión de módulos utilizando el navegador. La historia de la construcción web comenzó con los primeros empaquetadores como Dojo y Google Closure Tools. Sin embargo, estas herramientas tenían sus propios problemas. Luego, surgieron Gulp, Grunt, Babel y Browserify con sus propias soluciones para mejorar el proceso de desarrollo.

Mi nombre es Cedric Alcantara. Soy un Desarrollador Certificado. Hoy voy a hablar sobre las herramientas de JavaScript, la evolución y el futuro de JavaScript y las herramientas de construcción frontend. Soy un Desarrollador Social, soy un Defensor del Desarrollador y también soy un Autor Técnico Invitado en Smashing Magazine.

Entonces, ¿por qué se construye la web? Las razones esenciales por las que construimos nuestro código frontend hoy en día. Estas razones incluyen la gestión de dependencias, necesitamos poder gestionar todas las dependencias que nuestro código necesita sin tener que preocuparnos de que alguna de ellas se rompa. También necesitamos la transpilación, por lo que necesitamos poder utilizar estas sintaxis data sin problemas de compatibilidad en nuestro navegador. El empaquetado, necesitamos poder agrupar todo nuestro código en un archivo central. La minificación, necesitamos poder reducir el tamaño de nuestro código y tener una entrega más rápida al lado del cliente. Además, una parte muy importante es la gestión de módulos sin utilizar el navegador. Por lo tanto, hay ciertos navegadores que no tienen gestión de módulos, por lo que necesitamos poder gestionar muchos módulos sin tener que preocuparnos por nada.

Entonces, la historia de la construcción web. De 2005 a 2010 se vio la era de los primeros empaquetadores. Dojo fue lanzado en 2005 con su propia herramienta de construcción llamada Dojo Builder que ofrece minificación, eliminación de código muerto, múltiples perfiles de construcción, gestión de módulos y se puede incluso utilizar Node.js para una construcción más rápida. Google Closure Tools también fue lanzado en noviembre de 2009 por Google y tenía un compilador, por lo que esta es básicamente su propia herramienta de construcción que ayuda a eliminar código, código muerto, minimizar código, analizar código y optimizar código. Entonces, los problemas de los primeros empaquetadores y empaquetadores, por qué no eran perfectos. Dojo Builder era pesado. Dependía mucho de Java y tenía una documentación muy pobre. Los problemas del Compilador de Google Closure eran, era propietario, obviamente fue hecho por Google y era una especie de proyecto interno antes de ser lanzado al público. Requería Java 2, el tiempo de compilación era muy lento y tenía una mala experiencia de desarrollo. De 2010 a 2012 se vio la aparición de Gulp y Grunt, fueron los primeros en intentar estandarizar la construcción de canalizaciones utilizables sobre plugins. También dieron a los desarrolladores la libertad de escribir sus propios scripts de construcción y los plugins estaban disponibles para tareas básicas para los desarrolladores. En 2012 se vio la aparición de Babel. Babel permitió a los desarrolladores utilizar la última sintaxis de ASX sin preocuparse por la compatibilidad del navegador. Convierte la sintaxis de ASX en CommonJS y permite a los desarrolladores crear plugins personalizados para sus necesidades. De 2012 a 2014 se vio la aparición de Browserify. Esto fue un cambio de juego principalmente debido a que tenía el poder de npm como un registro de paquetes. Permitía a los desarrolladores utilizar ciertos plugins. Tenía la misma sintaxis que NodeJS y también tenía la sintaxis de módulo ASX, por lo que los desarrolladores estaban bastante contentos, pero tenía sus propias desventajas.

2. Webpack y sus características

Short description:

Desde 2015 hasta ahora, Webpack ha crecido de la versión 1 a la versión 5 y es utilizado por muchas grandes empresas en producción. Es más rápido que Browserify y ofrece características como reemplazo de módulos en caliente, división de código y recarga en vivo. Webpack también tiene el poder de los scripts de npm, lo que permite a los desarrolladores escribir sus propios scripts sin preocupaciones. Con complementos y preajustes, proporciona una mejor experiencia para el desarrollador.

Desde 2015 hasta ahora, hemos presenciado el surgimiento de Webpack, cómo ha crecido de la versión 1 a la versión actual, la versión 5. Muchas grandes empresas están utilizando actualmente Webpack en producción. Es más rápido que Browserify. Tiene un servidor de desarrollo muy bueno llamado Webpack Server. Tiene características como reemplazo de módulos en caliente, división de código, recarga en vivo, etc. También tiene el poder de los scripts de npm, por lo que los desarrolladores pueden escribir sus propios scripts de npm sin preocuparse por nada. Tenía complementos para diversos usos y también tenía preajustes para ampliar las características de Webpack. También ofrecía una mejor experiencia para el desarrollador en comparación con otras herramientas de construcción. Realmente era bueno para los desarrolladores.

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

Vite: Repensando las Herramientas de Frontend
JSNation Live 2021JSNation Live 2021
31 min
Vite: Repensando las Herramientas de Frontend
Top Content
Vite es una nueva herramienta de construcción que pretende proporcionar un flujo de trabajo más delgado, rápido y sin fricciones para la construcción de aplicaciones web modernas. Esta charla se sumergirá en el trasfondo del proyecto, la justificación, los detalles técnicos y las decisiones de diseño: qué problema resuelve, qué lo hace rápido y cómo encaja en el panorama de las herramientas JS.
Compilador React Forget - Entendiendo React Idiomático
React Advanced Conference 2023React Advanced Conference 2023
33 min
Compilador React Forget - Entendiendo React Idiomático
Top Content
React ofrece un contrato a los desarrolladores: cumple ciertas reglas y React puede actualizar eficiente y correctamente la interfaz de usuario. En esta charla exploraremos estas reglas en profundidad, entendiendo el razonamiento detrás de ellas y cómo desbloquean nuevas direcciones como la memoización automática.
El Futuro de las Herramientas de Rendimiento
JSNation 2022JSNation 2022
21 min
El Futuro de las Herramientas de Rendimiento
Top Content
Nuestra comprensión del rendimiento y la experiencia del usuario ha evolucionado mucho a lo largo de los años. Las herramientas de desarrollo web necesitan evolucionar de manera similar para asegurarse de que sean centradas en el usuario, accionables y contextuales donde se refiere a las experiencias modernas. En esta charla, Addy te guiará a través de cómo Chrome y otros han estado pensando en este problema y qué actualizaciones han estado haciendo a las herramientas de rendimiento para reducir la fricción para construir grandes experiencias en la web.
Cómo Bun hace que la construcción de aplicaciones React sea más simple y rápida
React Day Berlin 2022React Day Berlin 2022
9 min
Cómo Bun hace que la construcción de aplicaciones React sea más simple y rápida
El transpilador JSX incorporado de Bun, las recargas en caliente en el servidor, el punning de propiedades JSX, la API de macros, las instalaciones automáticas de paquetes, el soporte de console.log JSX, el renderizado en el servidor 4 veces más rápido y más hacen de Bun el mejor entorno de ejecución para construir aplicaciones React

Workshops on related topic

Uso de CodeMirror para construir un editor de JavaScript con Linting y AutoCompletado
React Day Berlin 2022React Day Berlin 2022
86 min
Uso de CodeMirror para construir un editor de JavaScript con Linting y AutoCompletado
Top Content
WorkshopFree
Hussien Khayoon
Kahvi Patel
2 authors
Usar una biblioteca puede parecer fácil a primera vista, pero ¿cómo eliges la biblioteca correcta? ¿Cómo actualizas una existente? ¿Y cómo te abres camino a través de la documentación para encontrar lo que quieres?
En esta masterclass, discutiremos todos estos puntos finos mientras pasamos por un ejemplo general de construcción de un editor de código usando CodeMirror en React. Todo mientras compartimos algunas de las sutilezas que nuestro equipo aprendió sobre el uso de esta biblioteca y algunos problemas que encontramos.
Soluciona el 100% de tus errores: Cómo encontrar problemas más rápido con la Reproducción de Sesiones
JSNation 2023JSNation 2023
44 min
Soluciona el 100% de tus errores: Cómo encontrar problemas más rápido con la Reproducción de Sesiones
WorkshopFree
Ryan Albrecht
Ryan Albrecht
¿Conoces ese molesto error? ¿El que no aparece localmente? Y no importa cuántas veces intentes recrear el entorno, no puedes reproducirlo. Has revisado las migas de pan, leído la traza de pila y ahora estás jugando al detective para unir los tickets de soporte y asegurarte de que sea real.
Únete al desarrollador de Sentry, Ryan Albrecht, en esta charla para aprender cómo los desarrolladores pueden utilizar la Reproducción de Sesiones, una herramienta que proporciona reproducciones de video de las interacciones de los usuarios, para identificar, reproducir y resolver errores y problemas de rendimiento más rápido (sin golpear tu cabeza contra el teclado).