javascript - software - AngularJS vs ReactJS
vue js vs angular (1)
Estoy decidiendo qué marco de JavaScript usar para mi nueva aplicación web. Quería usar Angular, pero recientemente escuché acerca de React. El problema es que no he encontrado una comparación realmente buena entre los dos. La mayoría de los artículos que hacen una comparación son "pro-reaccionar", y no son de gran ayuda para comparar, pero solo muestran por qué reaccionar es mejor. p.ej
https://www.codementor.io/reactjs/tutorial/react-vs-angularjs http://www.quora.com/Pete-Hunt/Posts/Facebooks-React-vs-AngularJS-A-Closer-Look
¿Alguna experiencia real o comparación que establezca los pros y los contras de ambos? Gracias por tu contribución
ACTUALIZACIÓN - Tal vez un pequeño ejemplo ayudaría, cómo hacer lo mismo en ambos marcos y comparar los pros / contras
Ejemplo : tengo una lista de compañías en una tabla. Cada fila es 1 compañía, cada columna es información sobre la compañía (nombre, dirección, número de empleados ...). Hay muchas entradas, y necesito buscar y ordenar (en el lado del servidor)
Tengo una experiencia razonable con React, y básicamente ninguno con Angular. Entonces, lo que voy a decir sobre Angular es de cosas que leí y escuché de otras personas.
Reaccionar
Pros
- Fácil de aprender
- Los componentes aislados son más fáciles de mantener
- La forma de "Reanudar siempre" de React es agradable para que sea más fácil de entender cuando las cosas se vuelven complejas
- Flux es una muy buena alternativa al patrón MVC. El flujo de datos unidireccional ayuda a mantener el mantenimiento y a mantener consistentes los datos y los elementos DOM. Combinado con estructuras de datos Immutable.JS, es la guinda del pastel :)
Contras
- No funciona bien con las librerías de manipulación DOM (p. Ej .: jQuery)
- Realmente cambia la forma en que haces las cosas, especialmente si estás usando Flux, lo cual es bueno, pero te lleva un tiempo acostumbrarte.
- Encontré algunos casos en los que volver a renderizar cada vez ralentiza la aplicación cuando los componentes manejan un gran conjunto de datos en el método de renderizado. Optimizar el rendimiento en estos casos puede ser un poco complicado.
Angular
Pros
- Buena documentación
- Los miembros de la comunidad son útiles (es fácil encontrar buenas respuestas aquí en SO).
- El enlace de datos bidireccional hace que algunas cosas sean realmente fáciles de implementar
Contras
- Problemas de rendimiento: para realizar un enlace de datos bidireccional, debe verificar los cambios en su modelo de datos. También tiene que analizar su HTML para que funcione. Esto ralentiza las cosas y, si la aplicación se ejecuta en un dispositivo móvil, agota la batería más rápido
- Lógica expandida en HTML y JS: código más difícil de comprender, mantener y depurar.
- v2 viene a arreglar algunos problemas, pero haciendo obsoleto todo el código v1