Acabo de salir un meeting, sobre que tenemos que elegir nuevo framework de frontend, el po vota por angular a full, pero yo prefiero vue, me lo voy a tener que tragar con patatas angular no?
#1 ¿Es un proyecto grande, que necesita un framework maduro, e implica mucho trabajo en templating? Angular es cojonudo para ello.
Si no, Vue o React son mejores en cualquier otro caso.
#6 Pues entonces sin duda tira por Angular... escala muy bien, se organiza aún mejor, y su carga dinámica de módulos va cojonuda hoy en día (no como hace unos pocos años, que iba bastante feílla), y tiene mucha comunidad y funcionalidades.
¿Lo único malo? Que Angular está overengineered a tope. Tiene muchísimas movidas propias... y lo suyo, es usarlas. Entonces, puede darse la situación de que si no tenéis unas code guidelines bien definidas, parte de las ventajas que ofrece se vean desaprovechadas con el tiempo. Así que lo suyo es definir bien cómo vais a hacer las cosas, aprender bien a usar services, pipes y guards... y si tal, si necesitáis mucha programación reactiva (cada vez más común), aprended a usar Ngrx.
Como siempre, lo malo con Angular y su entorno es acostumbrarte a hacer todo eso bien. Pero una vez se cumple, y se hace todo a través de buenas prácticas con Typescript, el código luce como una aplicación seria de verdad, y no como el 99% de las webs y apps que te encuentras en el stack de Javascript.
#6 Pues entonces Angular.
Ah, creo que no hace falta decirlo, pero cuando se dice Angular, nos referimos a Angular, no AngularJS. Qué después vienen las lágrimas.
Siempre podéis hacer vuestros componentes como web components, pero vamos, que puestos a usar un framework, has de casarte con el, que para eso están.
Exacto, si no tienes pensado (ni queréis) casarte con un framework tienes que hacer todo nativo, en este caso tirar de ECMAScript y JS puro.
Si vais a usar fw -> Angular.
#7 Como esta de maduro eso de Ngrx? Imagino que es una libreria para hacer flujos en el lado del cliente no? Que utilidad le dais?
Yo "reactivo" en el cliente solo tengo que escucho SSE y poco mas... xd
Redux es para cogerlo con un palo y arrastrarlo suavemente hasta la basura, no vaya a salpicar.
En angular, observables y punto, dejaros de chorradas con redux, que me lo tuve que comer en su dia con patatas, y encima todos los ultra-defensores de mi curro lo usaban mal.
#17 Por que lo utilizan mal?
La verdad es que react y redux son librerías que requieren un nivel alto de programación para no liarla. A mi me costaria un par de meses adaptarme.
No os enganeis, lo declarativo es el futuro.
#19 Reducers duplicados por todos los sitios, ficheros de 30k lineas con acciones duplicadas por todos los lados, acciones sin sentido de dominio, no entender lo que son las sagas y acabar usándolas para todo, usar el store de redux para absolutamente todo... incluso como si fuera la db... en fin.
La gente se complica la vida infinitamente, además de ser redux muy verbose, acaban haciéndolo 100 veces más por duplicidades y tener un state que no refleja el app-state, sino component-state.
Con observables haces lo mismo y puede ser mucho más limpio, seguir siendo reactivo y hacer flux igualmente.
#20 Trabajas con el stack? Estoy mirandome react/reasonml estos días. Me parece mas accesible y maduro que pureScript/elm.
https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367
Respecto a vue no encuentro nada claro. Que hace a vue especial? Estoy googleando pero no encuentro una buena comparación con react, tema template html vs jsx y que en vue los estados son mutables... Lo primero bien, lo segundo ayy lmao.
#22 Estuve en su día, el proyecto de fue al garete. Teníamos angularjs+ng-redux + react+redux + react a secas. Un Frankenstein rico. De todo lo que teníamos casi me quedaba con react a pelo y observables. Con mobx es muy fácil hacerlo mal, es mejor para mi, tener Observable genérico de Rxjs y crear clases encapsulando acciones/estado como interfaz.
Vue es moda hipster, no lo he tocado, algunos compañeros que están con él dicen que para cosas pequeñas bien.
Elm he oído cosas buenas, pero tampoco lo he tocado.
#23 Elm es como Reasonml pero desde otro punto de vista. Te dejo este link que lo explica muy bien en una tabla: https://www.imaginarycloud.com/blog/reasonml-react-as-first-intended/
En los proyectos que he tenido que hacer algo horrible tambien... abres el ide y ya sabes que vas a morir de algo porque el linter te da mil errores. "==" en lugar de "===" porque hay que si no los usan no usan js al 100%. Angular con mil side effects, todo lleno de Any porque es magia y hace que funcione todo. (Dicho tal cual y orgullosos si algo no funciona... ANY). Obviamente jquery para hacer chapuzas... Ganas de pegarme un tiro solo de pensarlo...
Quiero aprender algo ligero, rápido y para que resuelva las 4 tonterías de demo que necesito.
#26 Dicen que la curva de aprendizade de React es más fácil que Angular. Yo intento varias veces aprender React y se me van las ganas
Necesitas dependencias para todo.
#27 Necesitas dependencias para todo ya que react no es un framework, es una libreria.
En Angular al ser un framework completo, tienes todas las cosas integradas en él, como rutas, state, lifecycle methods...
Pero en cambio React, no te da nada y tienes que usar react-router por ejemplo para las rutas.
A mi me gusta mas por que te da mas flexibilidad a la hora de hacer las cosas.
#28 eso sí, pero tener incluso que usar un react-dom es alucinante... Ni un mínimo
Por cierto, alguna librería de componentes para react como Vuetify en vue? Gratis digo.