¿Por qué Angular y no React?

Una entrada más para sumar al Angular vs React - Nota de opinión

Veo muchos debates y "versus" de moda en la informática. Algunos clásicos como "jQuery vs LoQueSea" han quedado en el pasado; otros son muy interesantes como "Bootstrap vs TailWind" y algunos dan que hablar para rato. En el mundo de los frameworks de JavaScript todo parece resumirse a tres opciones: Angular, React y Vue. En esta entrada comentaré las razones por las cuales elegimos Angular como motor constructor de aplicaciones en lugar de las otras dos alternativas. Aun así, debo quitar de la ecuación a Vue, ya que lo considero totalmente inconcistente para desarrollo a bajo nivel; lo veo más como un "Mi primer framework", con respeto claro a todos los desarrolladores que eligen Vue como plataforma.

Estructura o Librería

Ciertamente, creo que no es justo hacer un "versus" o comparación sin mencionar que los públicos a los cuales se dirige Angular y React son distintos. React nació como una librería JavaScript, mientras que Angular es un framework estructural completo. Nada es mejor o peor, pero lo cierto es que un desarrollador JavaScript se sentirá muy cómodo con React; mientras que a Angular lo mirará a la distancia hasta comprenderlo. Por otro lado, un desarrollador de "vieja escuela" o que venga del mundo de C, se sentirá más tranquilo programando sobre Angular.

Material

Angular Material es la plataforma de diseño y componentes dedicados creada y mantenida de manera oficial por el equipo de Angular. Fue desarrollado teniendo en cuenta la creación de componentes mixtos (desktop y móviles) y con los sistemas de paletas de colores para garantizar accesibilidad. Esto hace que, al iniciar un proyecto en Angular, el 50% del diseño ya esté realizado por Material. El hecho de que lo mantenga el equipo oficial hace que las actualizaciones sean constantes e inmediatas.

Rendimiento del lenguaje

Acá imagino que entran los gustos, pero no puedo abstraerme de esto: la estructura a nivel lenguaje que maneja Angular es lo que llamamos "código bello". Una vez se entiende su funcionamiento ver el código fuente de un Componente es de una claridad tal que volver a leer JavaScript se vuelve tortuoso. Y lo veo como algo positivo, en mi experiencia al menos, al volver a programar un software que desarrollé en Angular hace meses se hace realmente ágil. Pero al volver a un desarrollo en JavaScript tradicional me hace falta un tiempo para leer e interpretar el código en su totalidad. La contra más común es la curva de aprendizaje, Angular es muy duro con eso; lo que si garantizo es que superada esa curva no hay vuelta atrás, el framework se hace querer.

¿Optimización?

Acá entramos en el terreno gris. Por un lado me parece más interesante el sistema de optimización mediante la compilación de Angular; pero hay que admitir que el Virtual DOM de React hace que la App sea un poco más rápida. La pregunta es, ¿merece la pena resignar todo lo bueno de un framework estructurado como Angular para ganar solo unos pocos milisegundos con React? Dependerá del proyecto. En Apps pequeñas que busquen velocidad sin dudas React ofrece una mejor opción. Pero para un proyecto grande con mucho mantenimiento, creo que a largo plazo Angular gana.

¿Por qué Angular y no React?
Ignacio Buioli 24 marzo, 2021
Compartir Entrada
Suscribirse al Newsletter:
Categorías
Archivo