javascript - create - Comparación de Restangular frente a JSData(antes datos Angular)
create angularjs project (0)
Una de las cosas de Angular que es tanto una característica como un punto de complejidad, es que no tiene mucha opinión sobre cómo interactuar con una API RESTful. Sé sobre $resource , Restangular y varias ideas que puedes encontrar al hacer rodar las tuyas .
En una aplicación compleja que tiene una gran cantidad de recursos, incluidos varios anidamientos, hay razones para pensar que Restangular es superior a $ recurso; por razones similares, también que Restangular es mejor que rodar los tuyos.
Una solución que no he visto hasta hace poco es JSData y su envoltorio para AngularJS ( repo ). A juzgar por el número de favoritos en Github (~ 900), tiene un número decente de personas al menos interesadas en él, si no lo usa. Es solo una fracción de lo siguiente que Restangular tiene en Github (5k +), pero sigue siendo significativo.
Para aquellos que han utilizado tanto Restangular como JSData, ¿cuál es su opinión sobre cómo se comparan (fortalezas / debilidades; diferencias de propósito, confiabilidad, etc.; cosas que pueden no ser fácilmente evidentes en los documentos)? Para que esta pregunta permanezca abierta, se adhieren a los hechos en lugar de las opiniones
Mis impresiones de lo que he leído son las siguientes:
Restangular
- (+) Gran mente compartida
- (+) Altamente personalizable.
- (-) El enfoque parece estar en la interacción real solo con la API REST, en lugar de ser considerado / actuar como un almacén de datos una vez que se devuelve (corríjame si me equivoco). Por supuesto, esto podría considerarse una característica, de la misma manera que la falta de opinión de Angular es una característica. Sin embargo, estoy poniendo esto como una desventaja por ahora, debido al trabajo de piernas adicional que esto implica para que el desarrollador encuentre su propia solución.
JSData
- (+) Funciona no solo con REST, sino también con localStorage, localforage, Firebase, etc., incluyendo adaptadores personalizados
- (+) Diseñado como un almacén de datos en caché para no tener que repetir llamadas HTTP (para ser justos, el almacenamiento en caché también es una opción con Restangular , aunque quizás menos interrelacionado / crítico para su misión)
- (-) No es tan grande, aunque el desarrollador parece comprometido