3 bibliotecas de JavaScript para reemplazar jQuery

Simplificando tareas como el recorrido de documentos HTML, la animación y el manejo de eventos, la incondicional biblioteca jQuery JavaScript cambió la cara del desarrollo web. En mayo de 2019, jQuery todavía se usa en el 74 por ciento de los sitios web conocidos, según el topógrafo de tecnología web W3Techs. Sin embargo, la biblioteca jQuery, que debutó en agosto de 2006, ahora está siendo vista por algunos desarrolladores como una tecnología más antigua cuyo tiempo ha pasado.

En los últimos años han surgido alternativas a jQuery, como la biblioteca Cash o incluso el JavaScript vanilla moderno, ahora que los navegadores web manejan JavaScript de la misma manera y ya no se necesita jQuery para resolver problemas de compatibilidad. Los argumentos en Reddit y los videos en YouTube argumentan que jQuery se ha vuelto obsoleto, o al menos no es tan esencial como lo era antes.

Por qué jQuery ya no es necesario

En una presentación de YouTube, "¿jQuery sigue siendo relevante en 2018?", El educador de desarrollo web Brad Traversy reconoce que jQuery es probablemente la mejor biblioteca de JavaScript generalizada jamás creada. Es fácil de aprender, compatible con todos los navegadores, más conciso que el JavaScript de vanilla anterior y rico en complementos que ofrecen funciones específicas. Pero JavaScript ha avanzado mucho desde ECMAScript 6, y jQuery ya no es necesario en muchas situaciones, concluye Traversy.

En otro video, el educador de codificación Kenneth Lowrey sostiene que dominar jQuery es una pérdida de tiempo. En el panorama actual del desarrollo web, los navegadores modernos manejan JavaScript de la misma manera, en su mayor parte. En la mayoría de los casos, el código JavaScript nativo es mejor que una “biblioteca heredada inflada como jQuery”, dice.

Si bien jQuery había sido la opción para realizar solicitudes HTTP, por ejemplo, ECMAScript 6 presentó Fetch, una API basada en promesas que facilita las solicitudes HTTP. Y el avance no se detiene con HTTP. Donde jQuery tiene utilidades para tareas como manipular matrices, Vanilla JavaScript ahora también tiene adaptaciones mejoradas para estas operaciones.

Las animaciones son aún más difíciles con JavaScript vanilla que con jQuery, pero hay otras opciones como transiciones CSS o fotogramas clave, señala Traversy. La biblioteca GreenSock de terceros también se puede utilizar para animaciones. Para la manipulación DOM, una tarea que alguna vez fue gobernada por jQuery, las API nativas del navegador han cerrado la brecha.

Para las tareas que no se pueden realizar en JavaScript vanilla, Traversy recomienda bibliotecas especializadas, en lugar de una biblioteca generalizada como jQuery. Traversy también recomienda usar marcos de JavaScript como React, Angular o Vue para aplicaciones de tamaño mediano y grande. Traversy todavía recomienda jQuery para su uso en sitios simples sin marco. 

Alternativas de jQuery

¿Qué debería usar en lugar de jQuery? Además de JavaScript vanilla moderno, una breve lista de alternativas de jQuery incluye Cash, Zepto y Syncfusion Essential JS 2. Cash y Zepto son bibliotecas de JavaScript de código abierto disponibles bajo una licencia MIT. Syncfusion Essential JS 2 es un producto comercial. 

Efectivo

Cash tiene más de 3570 estrellas en GitHub. Considerado como una “alternativa de jQuery absurdamente pequeña” para los navegadores modernos, Cash tiene una sintaxis de estilo jQuery para manipular el DOM y ocupa 32 KB de espacio sin comprimir. Cash admite capacidades que incluyen eventos con espacios de nombres, tipos de TypeScript y compilaciones modernas. Puede descargar Cash desde GitHub.

Zepto

Zepto se describe como "una biblioteca de JavaScript minimalista con una API en gran parte compatible con jQuery". Los desarrolladores que conocen jQuery ya saben cómo usar Zepto, continúan diciendo sus creadores. Zepto pretende ser mucho más pequeño y de carga más rápida que jQuery, y puede funcionar con el conjunto de herramientas PhoneGap para navegadores móviles y de escritorio. Puede descargar Zepto desde el sitio web del proyecto.

Syncfusion Essential JS 2

Syncfusion Essential JS 2 es una biblioteca de controles de interfaz de usuario de JavaScript con licencia comercial escrita en TypeScript. Syncfusion, que sirve como alternativa a la biblioteca jQuery UI, está diseñada para ser una biblioteca modular, liviana y de bajo costo para mejorar las aplicaciones web. Syncfusion admite marcos que incluyen Angular, React y Vue. Puede comprar Syncfusion Essential JS 2 o descargar una versión de prueba gratuita del sitio web de Syncfusion. El código fuente completo, los archivos de prueba unitaria, los scripts de prueba y las demostraciones en vivo están disponibles en GitHub.