¿Cuáles son las mejores bibliotecas de JavaScript para el desarrollo de IU web?

Creo que esta pregunta probablemente debería ser editada. Travis hizo un buen trabajo, pero creo que simplificaría esto preguntando si la pregunta es sobre desarrollo de sitios web, desarrollo de control de UI o desarrollo completo de aplicaciones web del lado del cliente.

Existen algunas bibliotecas increíblemente potentes, pero si solo está creando un sitio web interactivo básico, Ember.js o Backbone.js es una gran exageración. Por lo tanto, necesitamos saber qué pretendes desarrollar; entonces podemos reducirlo.

Los ejemplos dados, http://bufferapp.com/ y http://www.pubnub.com/, son más ejemplos de frameworks y bibliotecas para el desarrollo básico de sitios web en general, no para el desarrollo de UI .

Algunos marcos de ejemplo excelentes para el desarrollo básico de sitios web serían …

  • Twitter Bootstrap: http://twitter.github.com/bootst…
  • HTML5 Boilerplate: http://html5boilerplate.com/
  • jQuery (obviamente): http://jquery.com/
  • Dojo: http://dojotoolkit.org/
  • Biblioteca YUI (su material básico de desarrollo web): http://yuilibrary.com/

Si la pregunta es solo sobre el desarrollo de la interfaz de usuario del sitio web (widgets, calendarios, modales, controles deslizantes …), entonces sugiero más de este tipo de bibliotecas:

  • IU jQuery: http://jqueryui.com/
  • Biblioteca YUI (también tienen material avanzado de IU): http://yuilibrary.com/
  • Interfaz de usuario de Kendo: http://www.kendoui.com/

Aquí hay bibliotecas aún más potentes, si está creando aplicaciones web completas del lado del cliente:

  • Ember.js: http://emberjs.com/
  • SproutCore (Versión 1 de Ember.js): http://sproutcore.com/
  • Backbone.js: http://documentcloud.github.com/…
  • Columna vertebral: http://spinejs.com/

Si realmente está buscando enfocarse en el lado de la interfaz de usuario, hay una gran cantidad de opciones disponibles. Y sí, puede ser realmente difícil elegir con quién comenzar a jugar, y mucho menos decidir cuál usar finalmente en un proyecto.

Podrías mirar estos tres:

  • jQuery UI: un conjunto curado de interacciones de interfaz de usuario, efectos, widgets y temas creados sobre la biblioteca JavaScript de jQuery. Siempre es popular, pero ahora es un poco más antiguo y, por supuesto, tendrá que incluir jQuery, lo que parece que cada vez más desarrolladores intentan no hacerlo. Sin embargo, en mi experiencia, las IU son bastante fáciles de integrar.
  • OpenUI5: una biblioteca de interfaz de usuario de JavaScript de código abierto que crea aplicaciones web listas para la empresa que son de navegador cruzado / dispositivo. Parece que hay muchos rumores sobre esto últimamente. Lo mantiene SAP y ha recibido buenas críticas.
  • Webix UI Library: otra biblioteca de interfaz de usuario multiplataforma y navegador cruzado con algunos clientes de renombre (microsoft, BP, BoA). Definitivamente es una buena opción, pero a diferencia de la mayoría de los demás, le costará si desea utilizar todo lo que tiene para ofrecer.

Puede realizar una comparación de estos o muchos otros en este sitio: http://bit.ly/2msomBL

Luego, puede evaluarlos uno al lado del otro y consultar sus revisiones, ver el tipo de licencia, etc. Personalmente, comenzaría por echar un vistazo a OpenUI5, pero con tantas opciones disponibles, puede ser difícil elegir. Y, por supuesto, como siempre, depende de su proyecto y una biblioteca no será la opción correcta cada vez.

Pruebe la nueva biblioteca de interfaz de usuario basada en HTML5 Webix. http://webix.com/ Esta herramienta JavaScript de navegador cruzado se puede utilizar para el desarrollo de aplicaciones web de escritorio y móviles. Ofrece más de 40 componentes totalmente personalizables, proporciona integración con JQuery y puede funcionar con cualquier plataforma del lado del servidor: PHP, .NET, Java, etc.

Por qué RPM Software eligió MooTools http://mootools.net/

Estoy de acuerdo con las otras respuestas populares, pero nuestras necesidades eran una biblioteca JS en la que desarrollaríamos nuestro propio código. Otras bibliotecas pueden ser más adecuadas para el desarrollo rápido de la interfaz de usuario o para su uso en proyectos que involucrarán a diferentes equipos. Para nosotros, tenemos un único producto basado en la web que tiene un extenso desarrollo patentado de JS (alrededor de 41k líneas de código JS). Todas las bibliotecas populares, incluidas MooTools, ayudan a lidiar con los problemas del DOM y del navegador. Más importante para nosotros es trabajar con objetos, funciones y alcance.

1. MooTools adopta un enfoque prototipo de extender objetos nativos. Creo que esto da como resultado un código más agradable al final. No necesita envolver todo en el objeto de código grande como lo hace con jQuery. La forma jQuery es mejor si está trabajando con varias bibliotecas y para nosotros eso no es una preocupación. Esta es la diferencia más fundamental entre jQuery y MooTools.

2. MooTools tiene un código excelente para extender objetos, trabajar con matrices, tratar con alcance variable, eventos y funciones. En otras palabras, las piezas fundamentales sobre las que construimos nuestro propio código.

3. Me gusta el diseño del objeto Element de MooTools y sus funciones, especialmente la creación de Element y el par de funciones almacenar y recuperar.

4. El equipo de MooTools ha hecho un buen trabajo al mejorar la biblioteca y al mismo tiempo tomar decisiones difíciles sobre la estructura y los nombres de las funciones de la biblioteca. Las últimas actualizaciones han sido sencillas gracias a sus herramientas de compatibilidad, pero la actualización 1.1 fue difícil.

5. Casi no usamos código de terceros, por lo que no es una preocupación tener una base de datos de widgets y complementos. Sin embargo, MooTools es lo suficientemente popular como para ser una de las dos bibliotecas compatibles con la excelente biblioteca Highcharts ( http://www.highcharts.com/ ) (la otra es jQuery). Dicho esto, MooTools tiene una galería de códigos: http://mootools.net/forge/

Si está creando una aplicación donde escribirá mucho para JS, creo que MooTools es la mejor decisión. Fuimos por ese camino en 2007 y no me arrepiento.

Aaron Newton entra en más detalles aquí: http://jqueryvsmootools.com/ aunque ese artículo es de 2009.

Herramientas y utilidades de interfaz de usuario →

  • chico-ui
  • cierre de google
  • DHTMLX
  • extJS
  • kendoUI
  • qooxdoo
  • componentes boostrap y javascript
  • Fuel UX
  • wijmo
  • Widgets YUI3
  • dojo dijits
  • jQuery UI
  • 99lima
  • Zino UI
  • JKIT
  • sin trabajo
  • w2ui
  • No estoy seguro de que haya una gran respuesta para esto. No hay ninguna herramienta que cubra todo lo que necesita. Nuestra lista de bibliotecas Javascript …

    jQuery , abstracción DOM ( http://jquery.com/ )
    jQuery es muy útil para tratar el DOM y otros aspectos de cosas web generales. No todos usan jQuery, pero es el más común

    postal.js , bus de mensajería del lado del cliente ( https://github.com/ifandelse/pos …)
    Utilizo postal para construir controles reutilizables y comprobables para el lado del cliente. Postal proporciona una forma de enviar mensajes entre controles para que no tengan que estar estrechamente acoplados. Agregar un nuevo filtro a nuestros informes es muy simple, coloco un control, lo nombro y me aseguro de que el control de informes sepa cómo manejar ese tipo de filtro. El complemento de historial que usamos actualizará la url, por lo que el botón de retroceso ahora funciona de forma automática.

    underscore.js , herramientas y utilidades ( http://underscorejs.org/ )
    El subrayado proporciona utilidades cuando se trata de colecciones (matrices) en JavaScript. Es útil, todo se podría hacer sin él.

    bigote , plantillas ( https://github.com/janl/mustache.js )
    Moustache es un motor de plantillas simple, realmente se usa en mi aplicación principalmente para representar informes.

    Knockout.js ( http://knockoutjs.com/ )
    Knockout es el marco MVVM para Javascript. Funciona muy bien para la entrada de datos interactivos, y para eso se usa en mi aplicación.

    Modernizr ( http://modernizr.com/ )
    Modernizr proporciona ‘polyfills’ que le permiten tener nuevas funciones en navegadores antiguos al agregar comportamientos JS adicionales. Es solo una herramienta útil a menos que sepa exactamente qué plataforma debe admitir.

    history.js ( https://github.com/balupton/Hist …)
    Hay varias páginas que se actualizan dinámicamente en mi aplicación. Así que aprovecho history.js para actualizar la URL y decir que los botones de retroceso y avance funcionan sin cargar la página.

    Complementos de jQuery UI
    En algún momento, encontrará algún tipo de característica para la que alguien más ya ha escrito un complemento de jQuery UI. Solo úsalo, asumiendo que hace lo que quieres. No hay razón para construirlo solo para poseerlo.

    Cada una de estas bibliotecas ayuda a resolver una parte de la interfaz de usuario, pero no toda. Dependiendo de lo que necesite hacer, tendrá que elegir las bibliotecas que le permitan satisfacer sus necesidades. Si estuviera trabajando en un producto diferente en este momento, la lista anterior probablemente sería diferente porque mis necesidades serían diferentes.

    Riot.js

    Licencia: MIT

    Sitio web: riotjs.com

    React ha ganado popularidad rápidamente entre los profesionales que necesitan una biblioteca de interfaz de usuario potente. Sin embargo, la biblioteca Riot.js es una alternativa aceptable a React .

    Desafortunadamente, su comunidad es relativamente pequeña y no es el producto de Facebook. Sin embargo, Riot.js compensa eso por la presencia de un DOM virtual que es fácil de controlar debido a una sintaxis más limpia .

    ¿Cuándo usar? Cuando necesita una biblioteca de interfaz de usuario JavaScript minimalista con un flujo de trabajo simple, DOM virtual y sintaxis simple.

    Desde Descubrir las principales bibliotecas de JavaScript hasta Vigilar en 2017

    ¡Hola! Como ya se dijo, hay muchas herramientas útiles para la visualización de datos. Por ejemplo, cuando se requiere crear paneles de información, paneles de administración, panel de sistema o panel de KPI, etc. Nuestro equipo generalmente usa una biblioteca interactiva de componentes de JavaScript UI.

    Además, nuestro equipo de desarrollo de IU web especializado y confiable crea una apariencia llamativa que aumenta la interacción del usuario e impulsa las ventas.

    Antes de comenzar a diseñar una aplicación futura, nuestro equipo de analistas de negocios realizará una investigación exhaustiva y recopilará datos sobre los usuarios finales, sus necesidades y comportamiento, así como información sobre la carga de tráfico. Este proceso analítico capacita a nuestro equipo para crear una solución real y poderosa que será altamente demandada, fácil de usar y fácil de usar.

    Nuestros proyectos: https://xbsoftware.com/case-stud

    ¡El enlace de datos bidireccional es el jugo!

    AngularJS

    Marco MVH Superheroico JavaScript

    ¡Hola! Hace poco me enteré de la biblioteca Webix UI y creo que es realmente bueno. Yo uso la tabla dinámica y el administrador de archivos. Proporcionan tanto la versión gratuita GNU GPL V3 como la versión comercial. Su documentación es realmente genial. Echar un vistazo

    1. Usando jQuery (fácil pero menos rendimiento para IU compleja)
    2. Uso de React JS (mejor rendimiento y potencia de modelado, pero puede parecer complicado dependiendo de su nivel de experiencia en JavaScript, el proceso de representación del navegador y el modelo de evento del navegador. También su disposición a aprender un enfoque no convencional de la creación de IU)

    No existe lo mejor, es como preguntar cuál es la mejor herramienta para construir una casa. Pero sospecho que lo que realmente quieres es saber dónde comenzar a aprender. Si está buscando una herramienta flexible para comenzar que pueda usar para muchos tipos de aplicaciones, aprenda React y su herramienta Redux.

    Lodash, que es una actualización para subrayar (opinión discutible)

    Momento fecha hora biblioteca. Una visita obligada.

    Angularjs es un marco que no es una biblioteca.

    También considere aprender mecanografiado, que es un mejor javascript. Puede compilar su javascript directo y encontrar problemas con él.

    Si está buscando componentes de interfaz de usuario con los mejores temas integrados en su clase, arquitectura modular, liviana, móvil y táctil. Mi sugerencia es usar los componentes Essential JS 2 de Syncfusion. (Kit de herramientas de JavaScript UI moderno. Fuente completamente abierta)

    Además, está disponible para Angular 2+ y React.

    Nota: trabajo en Syncfusion

    Recomiendo la Fundación Zurb. La documentación tiene una descripción general extensa de lo que puede hacer con este marco front-end: http://foundation.zurb.com/docs/

    Sugiero usar esto: http://twitter.github.com/bootst
    Su marco completo tiene muchas características para hacer un buen diseño html5 con un diseño receptivo también.