68puntos

Backbone JS

Backbone JS
vs

Backbone JS análisis: 52 características relevantes

Backbone JS

¿Por qué es Backbone JS mejor que la media?

  • Tamaño de archivo sin incluir dependencias (archivos asociados)
    ?

    19KBvs75.64KB
  • Número de plugins
    ?

    153vs101.5
  • Tamaño de archivo incluyendo dependencias (archivos asociados)
    ?

    51KBvs120.8KB
  • Años desde su creación
    ?

    3yearsvs1.8years

Información general

Tiene un mecanismo para filtrar vistas basadas en variables de ámbito scope (por ejemplo, al buscar), sin la necesidad de escribir muchos códigos extra.
Los motores de plantillas permiten que la construcción de un UI sea fácil y flexible.
Permite el uso de funciones como atributos para computar propiedades u objetos.
JSX es un motor de plantillas que permite al desarrollador escribir especificaciones directamente en sus códigos, lo que es JavaScript plano vivo o pre-copilado. Esto elimina la separación entre las especificaciones de vista (view markup) y el código y ofrece mejoras de velocidad a través a los lenguajes del patrón string-based.
Prolonga HTML
Backbone JS
Mucha gente ve esto como una ventaja, ya que elimina la cabecera de otro lenguaje de plantillas.
La licencia MIT es una licencia muy permisiva que permite todos los usos, incluyendo el uso de negocios, sin garantía.
Puede ser utilizado para sustituir una parte de otro framework sin quitar las propiedades restantes.
Permite incorporar patrones de vista para una vista de alto nivel a partir de una plantilla o patrón establecido.
Tiene un proyecto boilerplate oficial o muy conocido que expone la estructura de archivos recomendada y permite a los desarrolladores comenzar más rápido.

Plugins

Dispone de un programa que incluye herramientas para crear animaciones fácilmente.
Los plugins son una manera sencilla de añadir una funcionalidad o de integrar otros servicios. Un número alto de plugins indica una comunidad de usuarios más activa. Solo se indican los plugins oficiales.
Esto indica que el framework tiene un ecosistema que vive, un gran apoyo de la comunidad y permite mayor flexibilidad y más rápido desarrollo.
El plugin para ayudar a validar la entrada de clientes antes de que sea procesado o enviado a un servidor. Siempre y cuando no sustituya a la validación del servidor, se puede mejorar ampliamente la experiencia del usuario.
Incluye utilidades para mantener modelos en sincronización con la representación del servidor sin necesidad de escribir llamadas jQuery boilerplate ajax.
Posee un programa para mantener los modelos sincronizados con su representación de servidor sin necesidad de escribir llamadas boilerplate ajax.
Soporta animación
Backbone JS
Incluye herramientas para crear fácilmente animaciones.
Tiene programas que ofrecen una simple funcionalidad para sincronizar modelos con el LocalStorage HTML5.

Libraries & Packages

No requiere forzosamente la utilización de una biblioteca específica (como jQuery, Zepto o MooTools) para encargarse de la manipulación de DOM y puede utilizarse con la que el desarrollador prefiera.
Las bibliotecas de Definición Asíncrona de Módulos permiten una programación limpia, fácil y modulada. Si el framework no funciona bien con dichas bibliotecas, puede haber otros medios de modular sus componentes y resolver dependencias, como Dependency Injection.
Bower es un paquete de gestión npm fácil de usar para aplicaciones de frontend.
El paquete de gestión nódulo puede usarse a su vez para gestionar los scripts de la interfaz front-end (la vista por los usuarios).
Incluye jQuery Lite
Backbone JS
Utiliza elementos de jQuery Lite donde la manipulación DOM es necesaria. Así, los desarrolladores obtienen cómodas funciones de ayuda jQuery sin tener que incluir la biblioteca completa. En muchos casos, este hecho elimina la dependencia del proyecto a jQuery.
Dispone de la popular biblioteca Underscore.js como dependencia. Underscore incluye funciones de ayuda para manipulación de lista y programación funcional.

Data binding

Los modelos y las vistas se pueden actualizar mutuamente.
Las vistas pueden actualizarse automáticamente cuando un objeto observable cambie.
Esto hace más sencillo la trasferencia de datos entre la aplicación y los servicios REST o el LocalStorage. También reduce la complejidad de funciones getter y setter.
La llamada mixins es una técnica de programación que permite a diferentes objetos compartir un comportamiento común sin la necesidad de una herencia orientada al objeto.
Puede extenderse para soportar modelos y vistas que se actualicen mutuamente. Esto añade talla al archivo, pero al mismo tiempo ofrece mayor flexibilidad.
Los modelos se observan para ver sus cambios. Esto es un patrón conocido. Puede dar mejor funcionamiento que el dirty-checking en algunos casos.
Comprueba cualquier cambio y actualiza los campos correspondientes. Puede dar mejor funcionamiento que los observadores, en muchos casos.

Rendimiento

Una talla de archivo menor tiene como consecuencia mayor rápidez de carga (subida de archivos y descarga).
El routing permite la interacción con la URL del navegador. Es muy importante para la experiencia del usuario, si se están construyendo aplicaciones de una sóla página.
Utiliza Promises
Backbone JS
Tiene una implementación interna de especificación Promises/A+. Promises es una alternativa popular para callbacks cuando se está trabajando con las respuestas del servidor.
Soporta un motor de plantilla que puede ser pre-recopilado en el servidor. Esto mejora, muy posiblemente, la velocidad de página, especialmente en dispositivos con baja potencia de computación.
Esto mejora muchísimo el rastreo del motor de búsqueda. Acrecenta muy posiblemente la velocidad de página, especialmente en dispositivos con baja potencia de computación.
Esto mejora la capacidad para ser probado y la modularidad.
Menos dependencias significa que tiene que incluir un número menor de extra scripts. El resultado de esto, normalmente, es un menor desarrollo elevado y un tiempo de subidas y descargas más veloz.
Los cambios en el modelo no derivan inmediatamente en actualizaciones de vista, pero se ponen el cola y se envían como grupo. Esto puede dar un mejor funcionamiento que las actualizaciones de vista instantáneas.
Permite el uso de bibliotecas como jQuery Deferred para soportar Promises. Promises es una alternativa popular para callbacks cuando se está trabajando con las respuestas del servidor.

¿Cuáles son los/las mejores frameworks MV*?

Mostrar todo
This page is currently only available in English.